sqlserver引用了无效的表_如何用Excel连接Sql Server数据库

73e91685f03fd7296fc47cf5ca35acc0.png

本文分享三种Excel连接Sql Server数据库的方法。第一种是用Excel自带的获取外部数据功能,第二种是用Excel VBA,第三种是用专业的第三方插件

1、用Excel自带的获取外部数据功能连接Sql Server数据库

点击“数据”->“自其他来源”->“来自Sql Server”->填写登录信息->选择数据库和表->下一步->完成。此时会跳出以下对话框:

d18f9d0c30d0671092334f33f7d69236.png

此处可以读取表中的数据,或是用Excel透视图或透视表来分析这个表

2、用Excel VBA连接Sql Server数据库

点击“工具”->“引用”添加以下引用:

Microsoft ActiveX Data Objects 2.8 Libary

Microsoft ActiveX Data Objects Records 2.8 Libary

Microsoft ADO Ext.2.8 For Dll and Security

Microsoft Forms 2.0 Object Libary

在工作簿里建一个表,我们给它取名为sys并在表中定义好数据库连接信息如下:

c4b18d6481f15e11e8db841dbbe2b965.png

这样我们就可以自己配置数据库连接信息了

新建一个模块专门用来写数据库的常用操作比如我们给这个模块取名为Mdl_public,首先在这个模块中定义以下几个公共变量

Public cat As New ADOX.Catalog

Public Conn As New ADODB.Connection '定义数据链接对象 ,保存连接数据库信息;请先添加ADO引用

Public rs As New ADODB.Recordset '定义记录集对象,保存数据表

Public Strsql As String

'打开数据库连接

Public Sub OpenSql()

If Conn.State = 1 Then Conn.Close

If Conn.State = 0 Then

With ThisWorkbook.Sheets("sys")

Conn.Open "Provider=sqloledb;" & _

" Server=" & .Cells(1, 2).Value & _

";Database=" & .Cells(2, 2).Value & _

";Uid=" & .Cells(3, 2).Value & _

";Pwd=" & .Cells(4, 2).Value & ";" '定义数据库链接字符串

End With

End If

End Sub

'关闭数据库连接

Public Sub CloseConn()

rs.Close

Conn.Close

End Sub

通过以上方法就实现了Sql Server数据库连接的打开和关闭

接下来,我们要使用连接查询数据库中的表,如下:

Sub ViewTop1000Rows(TBName As String)

Strsql = "SELECT TOP 1000 * FROM " & TBName

OpenSql '打开连接

rs.Open Strsql, Conn '使用连接

Cells.Clear

Dim i As Integer

For i = 0 To rs.Fields.Count - 1 '处理查询结果

Cells(1, i + 1).Value = rs.Fields(i).Name

Next i

Cells(2, 1).CopyFromRecordset rs

CloseConn '关闭连接

End Sub

Sub Test()

Call ViewTop1000Rows("MSreplication_options")

End Sub

这样设计看上去有些繁琐,但是当做比较大型的项目时这样处理好处很多。第一方便配置数据库,第二常用的数据库操作功能封装起来方便调用。比如查询数据库要经历三个步骤:1,打开连接(OpenSql) 2,执行查询语句(rs.Open Strsql, Conn )3,关闭连接(CloseConn)

3、用SqlCel连接Sql Server数据库

SqlCel连接数据库非常方便。SqlCel不仅可以连接Sql Server数据库,同时也可以连接Mysql、Oracle和文件夹。点击数据库连接下的SqlServer会出现以下对话框:

4fd16a8568750ac7fb061d9458a1f25b.png

设置好连接信息后点击确定即可。数据库连接上之后点击“查看所有表”即可将数据库中的所有表显示在当前工作簿中,之后点击其中任何一个表都可以对其进行各种操作,如下:

7e3497adbea23148136d63920de1337c.png

关于SqlCel的更多信息可登录以下网站查阅:

http://sqlcel.com

SqlCel软件的下载可见以下网址:

http://sqlcel.com/download/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值