excel连接外部数据库

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Excel中ADO连接几种数据库的格式及字符串拼写方法

ADO参考

摘要:在OLE DB(建立于低层ODBC 之上,是一个针对SQL 数据源和非SQL 数据源,如邮件和目录等进行操作的应

用程序接口)的基础上,Microsoft 推出了另一个数据访问对象模型:ADO(ActiveX Data Object:ActiveX数据对

象)。ADO 采用基于DAO 和RDO 的对象,并提供比DAO 和RDO 更简单的对象模型,它包含一些简化对数据存储

区数据的访问任务的内置对象。同时ADO具有强大的功能和灵活性,它可以使用相同的编程模式连接到不同的数据

库,为我们提供了数据库访问接口。

ADO对象

ADO 模型中定义了六个常用的对象:Connection、Command、Recordset、Error、Field 和Parameter对象,通过这

些对象的属性和方法,我们可以很方便地建立数据库连接,执行SQL查询以及存取操作。

下图直观地描述了对象之间的关系:

Connection对象

代表打开的、与数据源的连接。一般使用Connection 对象的集合、方法、和属性执行下列操作:

1、在打开连接前使用ConnectionString、ConnectionTimeout 和Mode 属性对连接进行配置。

2、使用DefaultDatabase 属性设置连接的默认数据库。

3、使用Provider 属性指定OLE DB 提供者。

4、使用Open 方法建立到数据源的物理连接。使用Close 方法将其断开。

5、使用Execute 方法执行对连接的命令,并使用CommandTimeout 属性对执行进行配置。

6、使用BeginTrans、CommitTrans 和RollbackTrans 方法以及Attributes 属性管理打开的连接上的事务(如果提供者支持则包括嵌套的事务)。

7、使用Errors 集合检查数据源返回的错误。

Command对象

定义了对数据源执行的命令,我们可以使用Command 对象的集合、方法、属性进行下列操作:

1、使用CommandText 属性定义命令(例如,SQL 语句)的可执行文本。

2、通过Parameter 对象和Parameters 集合定义参数化查询或存储过程参数。

3、使用Execute 方法执行命令并在适当的时候返回Recordset 对象。

4、执行前使用CommandType 属性指定命令类型以优化性能。

5、使用CommandTimeout 属性设置等待命令执行的秒数。

6、通过设置ActiveConnection 属性关联打开的连接。

7、设置Name 属性将Command 标识为与Connection 对象关联的方法。

8、将Command 对象传送给Recordset 的Source 属性以便获取数据。

Recordset对象

执行命令返回的记录集。任何时候,Recordset 对象所指的当前记录均为集合内的单个记录。通过Recordset 对象可对几乎所有数据进行操作。它由记录(行)和字段(列)构成。ADO连接EXCEL2003表

Conn.Open "provider=microsoft.jet.oledb.4.0;extended properties=excel 8.0;data source=" & 文件全路

Cnn.Open "provider=microsoft.jet.oledb.4.0;Extended properties='excel

8.0;hdr=no';data source=" & 路径

设置“HDR=NO"应该表示所选区域首行不做为标题,如果不设置该项,系统默认将首行非空记录做为ADO记录集的标题行

ADO连接txt文件

ActiveSheet.Cells.Clear

myText = "学生成绩.txt"

myPath = ThisWorkbook.Path

CnnStr = "Driver={Microsoft Text Driver (*.txt; *.csv)};" & "DBQ=" & myPath ' Cnn.Open CnnStr

rs.Open myText, cnn, adopenkeset, adLockOptimistic

ADO连接ACCESS2003的数据库

strAccess = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + _

ThisWorkbook.Path + "\data\数据库档案.MDB" + _

";Jet OLEDB:Database Password=" & "123"

'定义连接字符串数据源密码(最长20个字符)

Set ADOcn = New ADODB.Connection ' 赋值变量为对象引用

ADOcn.Open strAccess '打开连接

ADO连接FOXPRO 6.0的数据库

set conn =createobject("adodb.connection")

set rs=createobject("adodb.recordset")

sql="select * from aa.dbf"

conn.open "driver={microsoft visual foxpro

driver };sourcetype=dbf;excelusive=no;sourcedb=" & 文件路径

rs.open sql ,conn

msgbox rs.recordcount

rs.close

conn.close

conn=nothing

rs=nothing

需要安装foxpro 的odbc驱动

ADO连接SQL SERVER的数据库

Dim cnn1 As ADODB.Connection

Dim strCnn As String

' 打开连接。

strCnn = "Provider=sqloledb;" & _

"Data Source=srv;Initial Catalog=pubs;User Id=sa;Password=; "

cnn1.Open strCnn

ADO连接ACCESS2007的数据库

con.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Access2007数据源& _

";Jet OLEDB:Database Password=" & 密码

con.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Excel2007数据源& _

";Jet OLEDB:Database Password=" & 密码

ADO连接oracle数据库

Sub connect_数据库()

Dim strconnt As String

Set connt = New ADODB.Connection

Dim rs As Object

Set rs = New ADODB.Recordset

Dim sevip, Db, user, pwd As String

'设服务器地址、所连数据,及登录用户密码

sevip = "****"

Db = "****"

user = "****"

pwd = "****"

strconnt = "DRIVER={Microsoft ODBC for Oracle};Password=apps;User

ID=apps;Data Source=demo" '

connt.ConnectionString = strconnt

相关文档
最新文档