Menyelesaikan Masalah Sambungan VBA ke Pangkalan Data MySQL dalam Excel
Persoalan timbul apabila cuba menyambung ke pangkalan data MySQL menggunakan VBA dalam Excel tetapi menghadapi ralat. Berikut ialah penyiasatan dan penyelesaian yang mendalam kepada isu tersebut berdasarkan coretan kod yang disediakan.
Analisis Masalah:
Baris sesar yang dikenal pasti dalam kod VBA ialah:
oConn.Open str
Barisan ini bertanggungjawab untuk mewujudkan sambungan ke pangkalan data MySQL menggunakan rentetan sambungan yang disimpan dalam pembolehubah str. Ralat berlaku semasa langkah ini, menghalang sambungan daripada diwujudkan.
Punca Punca dan Penyelesaian:
Membandingkan kod VBA yang disediakan dengan sambungan PHP yang berjaya, satu perkara yang penting perbezaan menjadi jelas: kemasukan subrutin CONNECTDB() dalam kod VBA. Subrutin ini adalah tempat sambungan ke pangkalan data harus dimulakan, seperti yang dilihat dalam kod yang diperbetulkan yang disediakan dalam penyelesaian.
Kod VBA yang diperbetulkan di bawah menangani isu dan harus berjaya menyambung ke pangkalan data MySQL:
Private Sub ConnectDB() Set oConn = New ADODB.Connection Dim str As String str = "DRIVER={MySQL ODBC 5.2.2 Driver};" & _ "SERVER=sql100.xtreemhost.com;" & _ "PORT=3306" & _ "DATABASE=xth_9595110_MyNotes;" & _ "UID=xth_9595110;" & _ "PWD=myPassword;" & _ "Option=3" oConn.Open str End Sub Private Sub InsertData() Dim rs As ADODB.Recordset Set rs = New ADODB.Recordset ConnectDB sql = "SELECT * FROM ComputingNotesTable" rs.Open sql, oConn, adOpenDynamic, adLockOptimistic Do Until rs.EOF Range("A1").Select ActiveCell = rs.Fields("Headings") rs.MoveNext Loop rs.Close oConn.Close Set oConn = Nothing Set rs = Nothing End Sub
Kod yang dikemas kini memastikan sambungan ke pangkalan data MySQL diwujudkan sebelum cuba melaksanakan pertanyaan SQL dan mendapatkan data. Dengan mengikuti langkah-langkah ini, anda sepatutnya berjaya menyambung ke pangkalan data MySQL anda menggunakan VBA dalam Excel.
Atas ialah kandungan terperinci Mengapa Sambungan VBA Saya ke Pangkalan Data MySQL dalam Excel Gagal dan Bagaimana Saya Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!