全部博文(2065)
分类: 系统运维
2010-01-16 23:55:13
Vbs操作数据库专题
整理时间:
整理一下有关于VBS操作数据库的专题
环境是:ACCESS数据库
一、连接数据库方法
Option Explicit
Dim
Set Conn=CreateObject("ADODB.Connection") ‘注意与ASP的区别哦!
Dim outDateFile
outDateFile = "a.MDB"
Dim ConnStr
ConnStr="DBQ="&outDateFile&";Driver={Microsoft Access Driver (*.mdb)};"
Conn.Open ConnStr
得到了一个连接对象Conn之后就可以正常地拿它进行执行一些SQL命令的操作了!
二、执行更新操作的SQL语句
Dim sql
sql = "insert into a(id) values(1)"
Conn.execute sql
Conn.close
插入新记录操作
三、查询操作的SQL语句
查询的话可以做一个小专题专门来整理下的!
3.0 游标的类型
在 ADO,定义了 4 中不同的游标(指针)类型:
可通过 CursorType 属性或 Open 方法中的 CursorType 参数来设置游标的类型。
RS.Open Source,ActiveConnection,CursorType,LockType,Options
CoursorType 指定 Recordset 对象所使用的光标类型。 共有 4 种光标类型:
0 一 前滚光标,光标只能向前移动,执行效率高。是 Cursor 的默认值;
1 一 键盘光标,光标可向前或向后移动,Recordset 记录集同步反映自它创建后其他用户所作的修改和删除,但却不能同步反映自它创建后其他用户新增加的记录;
2 一 动态光标,光标可向前或向后滚动,任何时候 Recordset 记录集都同步反映其他用户的任何操作;
3 一 静态光标,光标可向前或向后移动,自创建后无法同步反映其他用户所做的任何操作,它的功能简单但消耗资源少。
LockType 表示编辑时记录的锁定类型。它决定了当不止一个用户试图同时改变一个记录时,Recordset 如何处理数据记录。 0 一 只读锁定,记录只读,不能更新 Recordset ,为 LockType 的默认值;
1 一 悲观锁定,编辑记录开始立刻锁定,直到提交给数据提供者;
2 一 乐观锁定,一次锁定一条记录,只有调用 Update 方法提交数据时才锁定记录;
3 一 乐观的批量更新,允许同时更新多条记录。
Bof 判断记录指针是否到了第一条记录之前。
Eof 判断记录指针是否到了最后一条记录之后。
RecordCount 返回 Recordset 对象的记录数,(在使用键盘光标时,该属怀返回 的可能是不太准确的数值;一般情况下,并不用这种方法来统计 Recordset 中的记录数,因为它的性能并不稳定)
3.1 查询的记录只有一条的情况即 select * from table where id=1
Dim sql
sql = "select id from a where i=3"
Dim rs
Set rs = CreateObject("ADODB.RecordSet")
rs.open sql,
MsgBox rs.RecordCount
If rs.eof=False Then
MsgBox rs.fields("id").value ‘提取字段内容值
End If
Conn.close
3.2 查询多条记录的操作
Dim rs
Set rs = CreateObject("ADODB.RecordSet")
rs.open sql,
MsgBox rs.RecordCount ‘符合条件记录个数
If rs.eof=False Then
While Not rs.eof ‘遍历此数据集
MsgBox rs.fields("id").value
rs.movenext ‘数据集
wend
End If
Conn.close