VBA数据库存取关键程序代码
目录
1.將資料表所有紀錄跑完一圈,並針對每一筆記錄欄位來修改或查詢错误!未定义书签。
2.觀念:如何寫程式碼來讀出某一資料表的全部資料,並做計算 (3)
3.查詢『某一筆紀錄』的關鍵程式碼.................................. 错误!未定义书签。
4.以關鍵字的方式查詢『某些筆紀錄』的關鍵程式碼...... 错误!未定义书签。
5.修改某一筆記錄的關鍵程式碼.......................................... 错误!未定义书签。
6.刪除某一筆記錄的關鍵程式碼.......................................... 错误!未定义书签。
7.觀念:如何寫程式碼來讀出某一資料表的全部資料,並做計算 (9)
1.将数据表所有纪录跑完一圈,并针对每一笔记录字段来修改或查
询
2.观念:如何写程序代码来读出某一数据表的全部数据,并做计
算
(1).比较:
?前面:是在窗体中,利用已经读取数据表的纪录→用已知栏未来
做计算
?现在:是还没读进数据表→要靠自己写程序代码将数据表读进来
(2).观念:
?Recordset是ADO(ActiveX Data Objects)技术中最常用的对象
?使用Recordset对象可以用来引用数据表的字段数据
(3).步骤1:先要开启数据表
语法范例:
?Dim fx As ADODB.Recordset//宣告fx为Recordset对象型态
?Set fx = New ADODB.Recordset//产生一个ADO对象实体给fx
?fx.Open “基本数据”, CurrentP roject.Connection, adOpenStatic,
adLockOptimistic
//将邮政编码数据表打开,以便读取数据表的字段数据
(4).步骤2:读取字段中的数据内容
?fx(“平均成绩”)
?fx(“上机考”)
?fx(“期中考”)
?fx(“期末考”)
(5).步骤3:移动纪录位置指令
?fx.MoveFirst→移到第一笔记录
?fx.MoveNext→移到下一笔记录
?fx.MoveLast→移到最后一笔记录
?fx.MovePrevious→移到上一笔记录
?fx.EOF→超过数据表的纪录
(6).步骤4:Recordset对象的Open方法
?Fx.Open 数据来源,数据链路,指针型态,锁定方式,选择
?其中,锁定方式的参数有4种模式
?adLockReadOnly:只读
?adLockPessimistic:悲观性锁定
?adLockOptimistic:乐观性锁定
?adLockBatchOptimistic:乐观性批次锁定
3.查询『某一笔纪录』的关键程序代码
'宣告变量
Dim dbs, rs As Variant
Dim SqlStr As String
'建立数据库对象(使用目前数据库)
Set dbs = CurrentDb
'开启数据表,并进行SQL语法查询
'SqlStr = "Select * from 资料表 where name ='jack'"
SqlStr = "select * from 数据表名称 where 字段 = 'test'"
Set rs = dbs.openrecordset(SqlStr)
'设定目前窗体的数据来源为
Me.RecordSource = SqlStr
'关闭数据库对象
dbs.Close
4.以关键词的方式查询『某些笔纪录』的关键程序代码
'宣告变量
Dim dbs, rs As Variant
Dim SqlStr As String
'建立数据库对象(使用目前数据库)
Set dbs = CurrentDb
'开启数据表,并进行SQL语法查询
'SqlStr = "Select * from 资料表 where name like '*jack*'"
SqlStr = "select * from 数据表 where 字段 like '*" & Me![text1] & "*'"
Set rs = dbs.openrecordset(SqlStr)
'设定目前窗体的数据来源为
Me.RecordSource = SqlStr
'关闭数据库对象
dbs.Close
'宣告变量
Dim dbs, rs As Variant
Dim SqlStr As String
'建立数据库对象(使用目前数据库)
Set dbs = CurrentDb
'开启数据表,并进行SQL语法
SqlStr = "Update 资料表set name = 'jack', chi = 90 where idno='C90001'"
'执行修改的指令
dbs.Execute (SqlStr)
'修改过后,让这个窗体重新执行一次
Me.Requery
'关闭数据库对象
dbs.Close
'显示修改完成的讯息
MsgBox ("已经修改完毕")
'宣告变量
Dim dbs, rs As Variant
Dim SqlStr As String
'建立数据库对象(使用目前数据库)
Set dbs = CurrentDb
'开启数据表,并进行SQL语法
SqlStr = "delete * from 资料表 where name = 'jack'"
'执行删除的指令
dbs.Execute (SqlStr)
'删除过后,让这个窗体重新执行一次
Me.Requery
'关闭数据库对象
dbs.Close
'显示删除完成的讯息
MsgBox ("已经删除完毕")
7.观念:如何写程序代码来读出某一数据表的全部数据,并做计
算
(1).比较:
?前面:是在窗体中,利用已经读取数据表的纪录→用已知栏未来
做计算
?现在:是还没读进数据表→要靠自己写程序代码将数据表读进来
(2).观念:
?Recordset是ADO(ActiveX Data Objects)技术中最常用的对象
?使用Recordset对象可以用来引用数据表的字段数据
(3).步骤1:先要开启数据表
语法范例:
?Dim fx As ADODB.Recordset//宣告fx为Recordset对象型态
?Set fx = New ADODB.Recordset//产生一个ADO对象实体给fx
?fx.Open “基本数据”, CurrentProject.C onnection, adOpenStatic,
adLockOptimistic
//将邮政编码数据表打开,以便读取数据表的字段数据
(4).步骤2:读取字段中的数据内容
?fx(“平均成绩”)
?fx(“上机考”)
?fx(“期中考”)
?fx(“期末考”)
(5).步骤3:移动纪录位置指令
?fx.MoveFirst→移到第一笔记录
?fx.MoveNext→移到下一笔记录
?fx.MoveLast→移到最后一笔记录
?fx.MovePrevious→移到上一笔记录
?fx.EOF→超过数据表的纪录
(6).步骤4:Recordset对象的Open方法
?Fx.Open 数据来源,数据链路,指针型态,锁定方式,选择
?其中,锁定方式的参数有4种模式
?adLockReadOnly:只读
?adLockPessimistic:悲观性锁定
?adLockOptimistic:乐观性锁定
?adLockBatchOptimistic:乐观性批次锁定