excel vba 连接mysql数据库

Sub testMysqlOdbc()
    'Dim conn As ADODB.Connection
    'Dim rest As ADODB.Recordset
    Set conn = CreateObject("ADODB.Connection")
    Set rest = CreateObject("ADODB.Recordset")
    'conn.ConnectionString = "DRIVER={MySQL ODBC 3.1 Unicode Driver};" & "SERVER=10.0.14.158;" & " DATABASE=hkoms;" & "UID=root;PWD=123 OPTION=3"
    conn.ConnectionString = "DRIVER={MySQL ODBC 5.3 Unicode Driver};" & "SERVER=10.0.14.158;" & " DATABASE=hkoms;" & "UID=root; OPTION=3"
    conn.Open
    Dim sql As String
    'sql = "select product_id,product_name from product p where p.product_name like '%a%'"
    'sql = "select product_id,product_name from product p "
    sql = "select * from sf_org"
    Set rest = conn.Execute(sql)
    Sheet1.Range("a1").CopyFromRecordset rest
    conn.Close
    Set conn = Nothing
    Set rest = Nothing

End Sub


这里需要注意的是:

1, "DRIVER={MySQL ODBC 5.3 Unicode Driver};" 这一段,要根据自己电脑上安装的mysql odbc 版本不同而有区别,比如,我的电脑上安装的就是5.3版本。

2,创建数据库连接对象和记录集对象有两种方法:

    'Dim conn As ADODB.Connection
   
   'Dim rest As ADODB.Recordset
   
      Set conn = CreateObject("ADODB.Connection")
   
      Set rest = CreateObject("ADODB.Recordset")

       我自己的选择是这样的:编码时使用前两种。使用或者分享时使用后两种。因为前两种有自动提示功能,后两种的优点是省去了繁琐的配置。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值