EXCEL(VBA)连接MSSQL查询数据
两种方法:
1、通过建立ODBC,例如下面的名为“SQL_SERVER”,再调用该ODBC进行连接
Dim qt As QueryTable
' 定义一个查询表
sqlstring = "select * from aad"
'定义一句SQL的查询语言内容到sqlstring里去, 以备调用.
excel连接sql数据库教程connstring = "ODBC;DSN=SQL_Server;UID=sa;PWD=;Database=db_demo"
'定义连接的方式到connstring里去, 以备调用. 说的是, 采用ODBC方式连接, ODBC的名字是SQL_Server, 用户名是sa, 密码是空, 连接AIS20060414142400库.
With ActiveSheet.QueryTables.Add(Connection:=connstring, Destination:=Range("A1"),sql:=
sqlstring)
'选择当前工作表中的B1单元格做为起始的地方, 开始连接数据库, 按条件查询, 并返回数据.
.Refresh
'刷新
End With
'数据查询结束, 则循环结束
2、直接与SQL服务器建立连接(有三种表示方式)
'不用DIM定义
Set Conn = CreateObject("tion")
Conn.Open "Driver=SQL Server;SERVER=erptest;Database=db_demo;uid=sa;pwd="
If Conn.State = 1 Then
MsgBox "打开成功"
sqll = "SELECT * FROM aad"
[a2].CopyFromRecordset Conn.Execute(sqll)
'下面语句是添入标题,视需要而添加
[a1] = "序号": [b1] = "标题": [c1] = "..."
newnumber = ActiveSheet.UsedRange.Rows.Count '有数据行的统计
If newnumber > 1 Then
MsgBox "有数据返回"
End If
End If
Conn.Close '关闭连接
Set Conn = Nothing '释放连接
'三种SQL直接连接方式
Conn.Open "Driver=SQL Server;SERVER=erptest;Database=db_demo;uid=sa;pwd="
Conn.Open "Provider=sqloledb;SERVER=erptest;Database=db_demo;uid=sa;pwd="
Conn.Open "driver={SQL Server};SERVER=erptest;Database=db_demo;uid=sa;pwd="

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。