《VB第11章使用VB开发SQLServer应用程序.ppt》由会员分享,可在线阅读,更多相关《VB第11章使用VB开发SQLServer应用程序.ppt(16页珍藏版)》请在三一办公上搜索。
1、1,第11章 使用VB开发SQL Server应用程序,三步曲开端用Field对象操作字段结合Recordset对象使用定位方法搜索记录集和表中的数据使用Bookmark属性记录在Recordset中的位置,2,第11章 使用VB开发SQL Server应用程序,开发一个集于ADO技术的VB数据库应用程序的三步曲开端,引用ADO类库利用ADO的Connection对象连接可用的数据源利用ADO的Recordset对象返回需要操作的记录集,3,第11章 使用VB开发SQL Server应用程序,1.中可引用ADO类库,Microsoft ActiveX Data Objects 2.0 Libr
2、aryMicrosoft ActiveX Data Objects 2.1 LibraryMicrosoft ActiveX Data Objects 2.5 LibraryMicrosoft ActiveX Data Objects 2.6 Library,引用ADO类库,菜单:工程引用,4,第11章 使用VB开发SQL Server应用程序,Connection对象,2.使用Connection对象连接可用的数据源,定义1个Connection对象;Dim cn As New ADODB.Connection设置Connection对象的CursorLocation属性为“位于客户端的游标
3、”(adUseClient);cn.CursorLocation=adUseClient定义连接字符串 provider=MSDASQL;dsn=bookdb;uid=sa;pwd=;“(ODBC)driver=SQL SERVER;server=toshiba;uid=sa;pwd=;database=bookdb“(OLE DB)通过Connection对象的Open方法建立数据连接;cn.Open provider=MSDASQL;dsn=bookdb;uid=sa;pwd=;(ODBC)cn.Open driver=SQL SERVER;server=toshiba;uid=sa;pw
4、d=;database=bookdb(OLE DB),5,第11章 使用VB开发SQL Server应用程序,Recordset对象,3.使用Recoedset对象返回需要操作的记录集(临时表),定义1个Recordset对象;Dim rs As New ADODB.Recordset定义检索语句 可以是:SQL查询语句:mysql=select top 1*from book或直接是表名:mysql=“book通过Recordset对象的Open方法返回记录集(建立临时表);rs.Open mysql,cn或rs.Open mysql,cn,adOpenStatic,adLockOptimi
5、stic,adCmdTable(分别设定:CursorType、LockType和Options参数),6,第11章 使用VB开发SQL Server应用程序,Close方法,使用Connection和Recordset的Close方法,通过使用Connection和Recordset的Close方法,可以释放记录集,关闭和数据源的连接。Set Connection=nothingConnection.Close和Set Recordset=nothingRecordset.CloseSet rs=nothingCn.Close,7,第11章 使用VB开发SQL Server应用程序,可以靠检
6、查Field对象的Value属性来获得字段的值(因为Field对象的缺省属性是Value属性,你只要引用Field对象即可,不需要明显的引用Value属性),Field对象,各种语法形式:rs.Fields(LastName)rs!LastNamers!LastName在Fields集合中,也可以用索引来标识Field字段:rstEmployees.Fields(0)可以使用索引循环遍历整个集合,在每一轮的循环中将索引的值加一。集合中的对象编号是从0开始的,因此第一个Field的编号为0,第二个为1,依此类推。字段的顺序是由基本表决定的。通常按照打开记录集时取得的顺序对字段进行编号。,01.v
7、bx,8,第11章 使用VB开发SQL Server应用程序,(1)Recordset对象的定位方法:MoveFirst方法用于转到记录集的第一行。MoveNext方法用于转到记录集的下一行。MovePrevious方法用于转到记录集的上一行。MoveLast方法用于转到记录集的最后一行。Move方法用于按说明的个数移动记录。,Recordset对象的定位方法,9,第11章 使用VB开发SQL Server应用程序,(2)使用BOF和EOF遍历记录集,Recordset对象的定位方法,Recordset对象还提供了两个属性用于告知你此时是否到了记录集的开始处或末尾处;EOF(End of Fi
8、le)属性为True时,表示你已移到了记录集的最后一个元素后面。BOF(Beginning of File)属性为True时,表示你已移到了记录集的第一个元素之前。,10,第11章 使用VB开发SQL Server应用程序,(2)使用BOF和EOF遍历记录集,Recordset对象的定位方法,通常用于遍历记录集的代码便是把定位方法和BOF、EOF结合起来,通常代码是一个循环,如下:Do Until EOF从字段Field中读取数据rs.MoveNextLoop,11,第11章 使用VB开发SQL Server应用程序,(3)使用BOF和EOF来确定一个记录集是否为空,Recordset对象的定
9、位方法,即使记录集中没有个记录,BOF和EOF属性也是可用的。事实上,判断记录是否为空的最好方法就是检验BOF和EOF的值,如果EOF和BOF都为True,记录集中便没有记录。,02.vbx,12,第11章 使用VB开发SQL Server应用程序,(4)使用RecordCount属性来确定记录集中记录的条数,Recordset对象的定位方法,可以用RecordCount属性来找出在一个Recordset对象中一共有多少条记录。,03.vbx,(5)当前记录在记录集中的位置,有的时候需要确定当前记录在记录集中的位置,并将当前记录位置指示给用户。例如,可以用拨号盘或仪表盘等类型的控件显示当前的记
10、录位置。以下属性可以指示当前的记录位置:AbsolutePosition属性。AbsolutePosition属性的值为当前记录相对于0的位置。然而,不要误以为它就是记录号:在当前记录处于不定状态时,AbsolutePosition的值为一1。另外,在访问记录集时,不能保证记录每次都以同样的顺序出现。,04.vbx,13,第11章 使用VB开发SQL Server应用程序,(6)改变记录的值,Recordset对象的定位方法,为了使用ADO Recordset对象更新已有的记录,可以遵循如下步骤:打开一个记录集。给该Recordset对象中的字段分配值通过执行该Recodset对象的Updat
11、e方法以保存该记录。rs.Fields(LastName)=Smith或者,因为Fields是Recordset对象的缺省集合,在向字段赋值时可以省去对Fields集合的显式引用。rs!LastName=Smith用记录集的update方法把记录保存到数据库。,14,第11章 使用VB开发SQL Server应用程序,(7)用AddNew 和Update方法创建新记录,Recordset对象的定位方法,使用记录集的AddNew 和Update方法,可以在任何可更新的Rocordset对象中创建新的记录,在记录集中创建新记录的过程分为三步:执行记录集的AddNew方法,这将在记录集的末尾添加一个
12、新的空白记录。使用通常向数据库字段赋值的语句为新记录赋值。用记录集的Update方法把记录写到数据库中。,DataEntr.vbx,15,第11章 使用VB开发SQL Server应用程序,搜索记录集和表中的数据,搜索记录集中的数据,搜索和查询不同。查询返回的是一个记录集。搜索在记录集的全部记录中查找满足你说明的条件的单个记录。针对ADO的记录集,搜索数据使用Recordset的Find方法。例如,假定你有一个由顾客组成的记录集,并且你对查找姓Smith的第一个顾客感兴趣,则可以使用以下的代码:rs.Find LastName=Smith特别要记住的是,与SQL SELECT查询不同,搜索不会
13、产生一个记录集。当Find方法搜索 Recordset 中满足指定条件的记录,如果条件符合,则记录集位置设置在找到的记录上,否则位置将设置在记录集的末尾。,Finder.vbx,查找客户:FirstName:DarylLastname:Halpin,16,第11章 使用VB开发SQL Server应用程序,使用Bookmark属性记录你在Recordset中的位置,使用Bookmark书签,当你在一个Recordset对象上的执行操作时,移来移去是常有的事,有时还需要移回开始的地方,用Recordset对象的Bookmark属性可以记住位置,以便以后能够返回这个位置。能提供Bookmark的记录集中,每个记录都有其自己的Bookmark,可以在任何时候进行检索和保存。但是书签并不是存储在数据库中,它们是在Recordset对象创建时自动生成的并且在Recordset对象被删除时自动丢弃。,Bookmark.vbx,使用书签的一般步骤如下:移到记录集中想标书签的位置。把Recordset对象的Bookmark属性值赋于一个变体型(Variant)的变量,这便为当前记录保存了唯一的书签。当想再回到该记录时,将变体型(Variant)的变量的值赋给记录集的Bookmark属性,当前记录变为标有书签的那个记录。,
链接地址:https://www.31ppt.com/p-6522705.html