vba oledb连接mysql_求教VBA连接SQL数据库的详细方法及解释。

本文探讨了使用VBA连接SQL数据库及Excel文件的方法,包括连接字符串的组成、不同类型的Provider及其作用,并讨论了如何将Excel文件作为数据源进行读取。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

刚开始用VBA连接SQL数据库调用数据,很多东西不明白。参照以前程序的代码,如下写出,可用,屡试不爽。但是其实细节还是不了解,需要求教以及解释。Setconn=CreateObject("ADODB.conn...

刚开始用VBA连接SQL数据库调用数据,很多东西不明白。参照以前程序的代码,如下写出,可用,屡试不爽。但是其实细节还是不了解,需要求教以及解释。

Set conn = CreateObject("ADODB.connection")

conn.Open "Provider=MSDAORA.1;Password=password;User ID=username;Data Source=DB;Persist Security Info=True"

参照以前代码,知道以上两句是打开数据库的代码,但是从来没有修改过,因为不知如何修改。

个人理解:

Provider应该是指代数据库——MSDAORA.1是Oracle的数据库;SQLOLEDB.1是SQL Server。不知道还有没有其他的写法?

Password是密码;

User ID是用户名;

Data Source是数据库名称或地址;

Persist Security Info不知道是什么……

Sql = "SELECT * FROM db.name"

这是SQL语句,明白。

Sheets("Sheet1").Cells(1, 1).CopyFromRecordset conn.Execute(Sql)

执行SQL语句,结果放在Sheet1的A1中。

Set conn1 = CreateObject("ADODB.connection")

conn1.Open "dsn=excel files;IMEX=1;dbq=Book1.xlsx"

个人理解以上这两句是将Book1.xlsx作为一个数据库?

Set rs = CreateObject("ADODB.Recordset")

百度后得知以上这句是创建数据集。

个人问题如下:

1、Provider除了我已知的MSDAORA.1、SQLOLEDB.1还能写什么?

2、conn.open后面除了上面的那些还能写什么?都有什么作用?

3、将Book1.xlsx作为一个数据库有什么具体的作用?

4、数据集有什么用?和我直接conn.Execute(Sql)有什么大的区别?

展开

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值