Rumah >pangkalan data >tutorial mysql >Mengapa Kod VBA Saya Gagal Menyambung ke Pangkalan Data MySQL Saya dan Bagaimana Saya Boleh Membetulkannya?

Mengapa Kod VBA Saya Gagal Menyambung ke Pangkalan Data MySQL Saya dan Bagaimana Saya Boleh Membetulkannya?

Barbara Streisand
Barbara Streisandasal
2024-10-29 04:46:29611semak imbas

Why Is My VBA Code Failing to Connect to My MySQL Database and How Can I Fix It?

Menggunakan VBA untuk Menyambung Excel ke Pangkalan Data MySQL

Menyambung ke pangkalan data MySQL dari dalam Excel menggunakan VBA boleh menjadi mencabar, terutamanya apabila kaedah sambungan standard gagal berfungsi . Memahami ralat khusus yang dihadapi adalah penting untuk mencari penyelesaian.

Dalam kod yang disediakan, ralat sambungan berkemungkinan besar disebabkan oleh penggunaan kata kunci Baharu yang salah. Untuk mewujudkan sambungan, anda harus membuat contoh objek ADODB.Connection tanpa menggunakan Baharu. Oleh itu, kod yang diperbetulkan hendaklah:

<code class="vba">Dim oConn As ADODB.Connection
Private Sub ConnectDB()
Set oConn = CreateObject("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"
''' error '''
oConn.Open str
End Sub</code>

Selain itu, ambil perhatian bahawa kod yang digunakan untuk memasukkan data daripada pangkalan data ke dalam Excel juga tidak betul sedikit. Versi subrutin InsertData yang diperbetulkan ialah:

<code class="vba">Private Sub InsertData()
Dim rs As ADODB.Recordset
Set rs = CreateObject("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 rs = Nothing
End Sub</code>

Sebagai perbandingan, berikut ialah contoh kod PHP yang berjaya menyambung ke pelayan MySQL:

<code class="php">$connect = mysql_connect("sql100.xtreemhost.com","xth_9595110","myPassword") or die(mysql_error());
mysql_select_db("myTable",$connect);</code>

Dengan mengikuti kod yang diubah suai ini, anda sepatutnya dapat mewujudkan sambungan ke pangkalan data MySQL anda dan berinteraksi dengan datanya dari dalam Excel menggunakan VBA.

Atas ialah kandungan terperinci Mengapa Kod VBA Saya Gagal Menyambung ke Pangkalan Data MySQL Saya dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn