初识vb数据库开发之实例2(创建记录浏览窗口)

初识vb数据库开发之实例2(创建记录浏览窗口),第1张

概述制作特点 使用ADO访问数据源-特点 1.通过ODBC数据源访问数据库,代表了如何建立关系数据库的ODBC数据源 2使用ADO RecordSet对象保存数据,执行update方法实时更新 3通过文本框和按钮事件完成数据显示和修改   设计分析       其实使用ADO可以直接翻跟Access 2000数据库(系统登录),本势力通过ODBC数据源访问期末地就是要说明如何建立和访问关系数据库的OD

制作特点

使用ADO访问数据源-特点

1.通过ODBC数据源访问数据库,代表了如何建立关系数据库的ODBC数据源

2使用ADO RecordSet对象保存数据,执行update方法实时更新

3通过文本框和按钮事件完成数据显示和修改

设计分析

其实使用ADO可以直接翻跟Access 2000数据库(系统登录),本势力通过ODBC数据源访问期末地就是要说明如何建立和访问关系数据库的ODBC数据源

使用ADO更新数据源的方法

1 将数据检索保存到RecordSet对象中,用Update方法进行更新。如果使用断开连接的Recordset对象,则用UpdateBatch方法进行更新

2 用Command对象执行sql数据更新命令,这是不需要使用RecordSet对象或使用其他方法将数据检索到本地计算机

技术要领

RecordSet的Locktype 属性用于指定记录锁类型

adLock@R_419_4609@:默认值,只读,无法更新数据

adLock@R_953_3270@:保守式记录锁定,在编辑记录时立即锁定数据源的记录

adLockOptimistic:开放式记录锁定,在执行Update方法时锁定记录

adLockBatchOptimistic:开放式批更新,表示RecordSet用UpdateBatch方法更新多个记录,即在执行UpdateBatch方法时锁定记录

Recordset 的临时表位置(CursorLocation属性用于指定临时表位置)可设置为

adUseClIEnt :客户端临时表,可以提供重新排序和使用索引查找记录等特有功能

adUseServer:服务器端临时表 ,由服务器端的被检索的数据源维护

注:ADO中的RecordSet默认为服务器端的单向只读临时表

浏览RecordSet中的记录

浏览RecordSet中的记录需要两个步骤。首先,定位当前记录,RecordSet打开时第一个记录为当前记录,然后用FIEld对象获得当前记录的各个数据列

RecordSet对象可用下列5个方法定位当前记录

1.MoveFirst:使记录指针指向第一个记录

2.MoveNext:使用记录指针指向下一个记录

3.MovePrevIoUs:使记录指针指向前一个记录

4.MoveLast:使记录指针指向最后一个记录

5.Move n:使记录指针指向从当前记录算起的第n个记录

:在浏览RecordSet时,Bof属相为true表示记录指针指向第一个记录之前,Eof属性为true时表示记录指针指向最后一个记录之后。这两个属性还可以用于测试RecordSet是否为空。

ODBC数据源类型

用户DSN :计算机本地数据源,只能被当前用户使用。

系统DSN:计算机本地数据源,可被任何就有权限的用户使用

文件DSN:可以不是计算机本地数据源,可被安装了相同驱动程序的用户共享

:connection对象在建立数据源连接时,默认使用MSDAsql驱动程序,所以在连接字符串中只需指定数据源名称即可例如:

objCn.Open"DSN=myaccess" '建立数据库连接

*** 作过程

1创建OODBC数据源

选择系统“开始”->程序 ->管理工具->数据源

单击添加按钮,选择Microsoft Access Driver

单击完成按钮,打开安装对话框

在数据源名文本框中输入“实例2DSN”作为新建数据源的名称,在说明文本框中输入“实例2Access数据源”,单击选择按钮

单击确定关闭对话框

如果要为ODBC数据源设置登录名称和密码等道济选项,可单击高级按钮,打开高级选项设置

如果使用Access数据库带有系统数据库,则应选择“ODBC Microsoft Access安装”对话框中的数据库,然后单击系统数据库按钮

如果要设置驱动程序的附加选项,包括页超时,缓冲区大小,独占区大小,独占和只读等,单击

ODBC Microsoft Access安装”对话框中的选项按钮,在对话框底部显示驱动序附加选项

单击确定按钮关闭安装对话框,新建的实例2DSN数据源显示在“ODBC数据源管理器”对话框列表中

单击确定按钮关闭“OBDC数据源管理器”对话框,完成数据源创建 *** 作

设计记录浏览窗体

注:最底下的那个文本框的locked的属性设置为true

建立ADO引用

工程->引用 选择Microsoft ActiveX Data Objects 2.5 library

编写代码

Dim objrs As RecordsetDim objcn As ConnectionDim isNeedSave As Boolean '用于标识是否需要执行保存 *** 作'添加前一记录的代码。用户单击按按钮时先保存当前记录的修改,然后使前一个记录为当前记录Private Sub Command1_Click()  DoSave  objrs.MovePrevIoUs  If objrs.BOF Then objrs.MoveFirst  '显示当前记录  txtUsername = objrs.FIElds("用户名").Value  txtPassword = objrs.FIElds("口令").Value  txtMsg = objrs.absoluteposition & "/" & objrs.RecordCount  End Sub'添加后一记录的代码。用户单击按按钮时先保存当前记录的修改,然后使下一个记录为当前记录Private Sub Command2_Click()   DoSave  objrs.MoveNext  If objrs.EOF Then objrs.MoveLast  '显示当前记录  txtUsername = objrs.FIElds("用户名").Value  txtPassword = objrs.FIElds("口令").Value  txtMsg = objrs.absoluteposition & "/" & objrs.RecordCount  End Sub'创建数据源连接,并检索数据,将检索到的第一个记录显示在窗体中 Private Sub Form_Load()  Set objcn = New Connection  '实例化connection对象  '连接数据库  objcn.Open "DSN= 实例2DSN"   Set objrs = New Recordset '创建客户端的记录集    With objrs       .CursorLocation = adUseClIEnt '指定临时表位置       .CursorType = adOpenDynamic   '指定使用键集游标       .LockType = adLockOptimistic  '指定锁定类型       .Open "SELECT*FROM 系统用户",objcn  End With  '显示第一个记录集  txtUsername = objrs.FIElds("用户名").Value  txtPassword = objrs.FIElds("口令").Value  txtMsg = objrs.absoluteposition & "/" & objrs.RecordCount  End Sub'定义一个过程执行数据更新 *** 作Private Sub DoSave()  If isNeedSave Then     objrs.FIElds("用户名").Value = txtUsername     objrs.FIElds("口令").Value = txtPassword     objrs.Update   '执行更新 *** 作  End IfEnd Sub'如果修改了数据,则设置isneedsave为truePrivate Sub txtPassword_Change()  isNeedSave = True   '在修改当前记录字段时,设置保存标识End SubPrivate Sub txtUsername_Change()  isNeedSave = True   '在修改当前记录字段时,设置保存标识End Sub'Unload 事件代码,在窗体关闭时释放数据库的连接和ADO对象Private Sub From_Unload(Cancel As Integer)  Set objrs = nothing    '释放记录集对象  objcn.Close         '释放数据库连接  Set objcn = nothing '释放连接对象End Sub
总结

以上是内存溢出为你收集整理的初识vb数据库开发之实例2(创建记录浏览窗口)全部内容,希望文章能够帮你解决初识vb数据库开发之实例2(创建记录浏览窗口)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1284447.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存