|
不妨我在这里讲讲,在Access中执行SQL语句的几种方法:
1. Docmd.RunSQL
这是最常见的运行动作查询(定义、删除、更新)的方法,这种方法,不会返回结果集(数据),默认情况下,Access会先提示或警告,它是Access的内置方法。
2.通过ADO对象执行SQL语句
这种方法,通常需要先引用ADO,然后利用ADO连接对象来执行SQL语句。Access有这样一个内置对象的ADO连接对象CurrentProject.Connection,我们可以通过它执行SQL语句或者存储过程,方法如下:
a.有结果集的SQL语句
Dim sSQL As String
sSQL = "SELECT * FROM SomeTable"
Dim rs As ADODB.Recordset
Set rs = CurrentProject.Connection.Execute(sSQL)
结果集保存在名为rs的ADO记录集对象中。这样的结果是只读的,通常用来查找特定的数据。
b.执行动作查询(定义、删除、更新)
Dim sSQL As String
sSQL = "UPDATE TABLE SomeTable SET Field1 = Field1 + 1000, Field2 = 'Sometime update data' WHERE ID > 1000"
Dim n As Long
CurrentProject.Connection.Execute sSQL, n
MsgBox "本次更新了 " & n & " 条记录"
这种操作与Docmd.RunSQL极为类似,但不会有提示和警告。
3.除了可以使用ADO对象执行SQL语句外,DAO对象也可以,使用方法与ADO类似,就不在这重述。 |
|