名列前茅种是用Excel自带的获取外部数据功能,第二种是用Excel VBA,第三种是用专业的第三方插件。用Excel自带的获取外部数据功能连接Sql Server数据库:点击“数据”->“自其他来源”->“来自Sql Server”->填写登录信息->选择数据库和表->下一步->完成。
一、excel怎样与数据库进行连接并可以直接在excel中操作数据库中的表
名列前茅种是用Excel自带的获取外部数据功能,第二种是用Excel VBA,第三种是用专业的第三方插件。
1、用Excel自带的获取外部数据功能连接Sql Server数据库
点击“数据”->“自其他来源”->“来自Sql Server”->填写登录信息->选择数据库和表->下一步->完成。
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
这样我们就可以自己配置数据库连接信息了
新建一个模块专门用来写数据库的常用操作比如我们给这个模块取名为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 View前二000Rows(TBName As String)
Strsql = “SELECT 前二000 * 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 View前二000Rows(“MSreplication_options”)
End Sub
这样设计看上去有些繁琐,但是当做比较大型的项目时这样处理好处很多。名列前茅方便配置数据库,第二常用的数据库操作功能封装起来方便调用。比如查询数据库要经历三个步骤:1,打开连接(OpenSql) 2,执行查询语句(rs.Open Strsql, Conn )3,关闭连接(CloseConn)
3、用SqlCel连接Sql Server数据库
SqlCel连接数据库非常方便。SqlCel不仅可以连接Sql Server数据库,同时也可以连接Mysql、Oracle和文件夹。
延伸阅读:
二、SQL是什么
Structured Query Language
‘SQL’是结构化查询语言,是一种用来操作 RDBMS 的数据库语言,当前关系型数据库都支持使用SQL语言进行操作,也就是说可以通过 SQL 操作 oracle,sql server,mysql,sqlite 等等所有的关系型的数据库
- SQL语句主要分为:
DQL:数据查询语言,用于对数据进行查询,如select**
DML:数据操作语言,对数据进行增加、修改、删除,如insert、udpate、delete**
TPL:事务处理语言,对事务进行处理,包括begin transaction、commit、rollback
DCL:数据控制语言,进行授权与权限回收,如grant、revoke
DDL:数据定义语言,进行数据库、表的管理等,如create、drop
CCL:指针控制语言,通过控制指针完成表的操作,如declare cursor - 对于web程序员来讲,重点是数据的crud(增删改查),必须熟练编写DQL、DML,能够编写DDL完成数据库、表的操作,其它语言如TPL、DCL、CCL了解即可
- SQL 是一门特殊的语言,专门用来操作关系数据库
- 不区分大小写