简体   繁体   English

在Excel中连接到MySQL数据库

[英]Connecting to Mysql db in Excel

So, I have to write a piece of code at my internship to link some excel worksheets with a MySQL DB and keep them updated, so far I have this but it keeps giving me errors. 因此,我必须在实习时编写一段代码,以将某些excel工作表与MySQL数据库链接并保持它们的更新,到目前为止,我已经有了这个,但它总是给我带来错误。 Do you see any mistakes? 你看到任何错误吗? Thanks for reading. 谢谢阅读。

The error I get is: runtime error -2147217900 automation error. 我得到的错误是:运行时错误-2147217900自动化错误。

PS: I'm very new to VBA PS:我是VBA的新手

Dim server_name As String
Dim database_name As String
Dim user As String
Dim Password As String
Dim rs As adodb.Recordset
Dim naam As String
Dim oConn As adodb.Connection


Public Sub getSerieNummer()

Dim result As String
Dim b As Long
Dim strSQL As String

naam = Range("C1").Value

server_name = "servername"
database_name = "dbname"
user_id = "idname"
Password = "password"

Set oConn = New adodb.Connection
oConn.Open "SERVER=" & server_name _
& ";PORT=3306" _
& ";DATABASE=" & database_name _
& ";UID=" & user_id _
& ";PWD=" & Password & _
";DSN=name_in_odbc;"

strSQL = "SELECT [serial_number] FROM view_aix WHERE [name] ='" & naam & "';"
Set rs = oConn.Execute(strSQL)

b = 0
With rs
    Do Until .EOF
    b = b + 1
    result = !serial_number
    rs.MoveNext
    Loop
End With
    oConn.Close
    rs.Close
Set rs.ActiveConnection = Nothing
Set oConn = Nothing
Range("C2").Value = result

End Sub

MySQL do not support "[" instead use " ` ". MySQL不支持“ [”,而是使用“`”。

Maybe is your connection string the problem. 也许是您的连接字符串出了问题。

ODBC Connection Style ODBC连接样式

Driver={mySQL};Server=localhost;Option=16834;Database=myDataBase;

OLEDB Connection Style OLEDB连接样式

Provider=MySQLProv;Data Source=mydb;User Id=myUsername;Password=myPassword;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM