פונקציית vba & odbc
-
@ליבל אמר בפונקציית vba & odbc:
לא בדיוק הבנתי את כוונתך
עד היום עשיתי, נתונים חיצונים>מקור חדש>קובץ odbc התכוונת לזה ?הפונקציה הזו טובה לקריאת נתונים דרך Recordset של ADO (ActiveX Data Object)
היא לא תשמש אותך אם יש טפסים המבוססים ישירות על טבלאות או שאילתות, לזה צריך אובייקט DAO.
מה שאתה צריך זה פונקציה שתיצור קישור טבלה באמצעות אובייקט Tabldefs. משהו בסגנון:public sub CreateTableLink(tableName as string, cnn as string) dim tdf as DAO.Tabledef Set tdf = currentdb.CreateTableDef(tableName) tdf.Connect = cnn currentdb.TableDefs.Append tdf end sub
ותעביר כפרמטרים את שם הטבלה ומחרוזת הקישור
-
@ליבל אמר בפונקציית vba & odbc:
@dovid אמר בפונקציית vba & odbc:
במהלך הגדרת החיבור (בדרך שעשית עד היום) יש אפשרות כמדומני לצפות ב"מחרוזת החיבור" (connection string).
לא בדיוק הבנתי את כוונתך
עד היום עשיתי, נתונים חיצונים>מקור חדש>קובץ odbc התכוונת לזה ?ואז נפתח לך תיבת דו שיח, ואתה מתבקש ליצור חיבור חדש או להשתמש בקובץ חיבור קיים.
בסיום התהליך כמדומני יש מקום שאתה יכול לראות את מחרוזת החיבור - טקסט אנגלי ארוך שמכיל את כל הפרמטרים שהזנת באפשרויות החיבור. -
@chagold תודה אכן נתן לי את הנתיב.
עדיין יש לי שגיאה לא מבין מדוע,Private Sub Form_Current() Dim oConn As ADODB.Connection Private Sub ConnectDB() Set oConn = New ADODB.Connection oConn.Open "DRIVER={MySQL ODBC 8.0 Unicode Driver};SERVER=51.51.51.51;UID=sss;PWD=XXXXXX;DATABASE=jjjj;PORT=3306;" End Sub
חוץ מ
DRIVER={MySQL ODBC 8.0 Unicode Driver}
שזה חייב להיות נכון, הכול היה בתיעוד הנתיב -
וואו אני באמת חדש ב vba, מעניין מה צריך לעשות
זה לא משנה פונקציה פרטית ופונקציה כללית ?Sub j() Dim oConn As ADODB.Connection Private Sub ConnectDB() Set oConn = New ADODB.Connection oConn.Open "DRIVER={MySQL ODBC 8.0 Unicode Driver};SERVER=222.000.333.22;UID=s555r;PWD=55555;DATABASE=ggggggg;PORT=3306;OPTION=3;" End Sub