עבור לתוכן

SQL - חיפוש טבלה בתוך קובץ

Featured Replies

פורסם

שלום, אני בונה פרוייקט בVB אשר מבוסס על בסיס נתונים.

אחת הפעולות שאני צריך לעשות היא הוספה של טבלה לבסיס הנתונים, פעולה פשוטה כשלעצמה, אבל אני צריך קודם כל לבדוק אם באמת לא קיימת טבלה בשם זה.

יש למישהו רעיון כיצד ניתן לעשות זאת? תודה!

פורסם

לא תוכל.....אתה תקבל שגיאה.

אם תנסה ליצור טבלה למרות שכבר קיימת טבלה :silly: עם השם שרצית אתה תקבל שגיאה.

ואז תצטרך ALTER ולא CREATE

פורסם
  • מחבר

אין דרך לבדוק האם קיימת טבלה בשם זה לפני פעולת הCreate?

פורסם
  • מחבר

הממ, אולי לנסות פשוט לשלוף ממנה?

חשבתי על זה, אבל יכול להיווצר מצב שהיא קיימת, אבל ריקה, לא?

פורסם

תנסה:

if NOT EXISTS (שאילתא)

פורסם
  • מחבר

Pure-Gold, לא הבנתי, איך בדיוק ליצור את ההפניה? את המשפט הזה כמשפט SQL?

בכל מקרה, הציעו לי משהו כזה:


Dim isTable As Boolean
Dim db As Database
TableName = ..
Set db = OpenDatabase(CommonDlg1.filename)
isTable = False
For i = 0 To db.TableDefs.Count - 1
If TableName = db.TableDefs(i).name Then
isTable = True
End If
Next i
If isTable = False Then
...
End If
db.Close

רק מה, אני מקבל הודעת שגיאה שמתייחסת לשורה Dim db As Database.

ההודעה: User defined type now defined

פורסם

מה שאני מתכוון הוא:

If NOT EXISTS (CREATE TABLE Table_Name (Bla1 varchar,Bla2 varchar))

בשביל להגדיר את האובייקט שהוא Database אתה צריך לומר ל vb מה זה ה Database אתה צריך להוסיף רפרנס שלו לתוך התוכנית.

אני לא זוכר בדיוק איך הוא נקרא שם מכיוון שאין לי vb זמין פה.

תחפש בגוגל איך קוראים לסיפריה של ADODB ותוסיף אותה לפרוייקט שלך (אני חושב שזה ADO 3.6 אבל לא סגור על זה).

לאחר מכן אתה מגדיר משתנה:

Dim objConn as ADODB.Connection

אתה צריך להגדיר לו מנוע שאיתו הוא מתחבר למסד הנתונים.

אחרי כל זה אתה רושם:

objConn.open השאילתא שרשמתי לך למעלה.

ואולי זה יעבוד. :)

פורסם

רק מה, אני מקבל הודעת שגיאה שמתייחסת לשורה Dim db As Database.

ההודעה: User defined type now defined

אתה יכול להוסיף פקד DATA לטופס ולהשתמש בו.

פורסם
  • מחבר

קודם כל תודה לכולכם!

עכשיו, כמה הבהרות, הרמה שלי בVB לא בשמיים בכלל, ואת רוב הידע שלי בבסיסי נתונים רכשתי שנה שעברה במסגרת פרוייקט של יחידת בגרות.

בכל מקרה, אם מישהו יהיה מוכן להסביר לי קצת יותר מדוייק איך לכתוב (לדוגמא עם הבקר DATA) אני אודה לו מאוד.

בכל מקרה, את ההצעה של Pure-Gold אני לא יכול לבדוק עכשיו מסיבה פשוטה, אין לי גישה למחשב עם התוכנה, ולצערי מחר בבוקר אני נוסע עד ליום שישי.

שוב פעם, אם למישהו יש קוד מדוייק ופשוט ושעובד כמה שיותר אני אודה לו מאוד!

ודבר אחרון, שוב תודה רבה על כל העזרה והסבלנות :)

פורסם

השימוש הוא בידיוק אותו הדבר כמו השימוש בCONNECTION שהוצג מקודם.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים