




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Oracle10g数据库应用教程
授课教师:职务:第11章ADO数据访问技术课程描述ADO是目前比较流行的数据库访问技术。它使用更加简单灵活的对象模型,适用于各种程序设计语言。在本书实例中,使用VisualBasic开发的实例就是基于ADO数据访问技术实现的。本章知识点ADO数据模型数据库访问控件常用ADO对象11.1ADO数据模型ADO提供执行以下操作方式:连接到数据源。指定访问数据源的命令,可以在命令中指定参数。通常涉及ADO的Command对象。执行命令,例如一个SELECT脚本。在适当情况下,可以把缓存行的更改内容写回数据库中,更新数据源。提供常规方法检测错误(错误通常由建立连接或执行命令造成),涉及ADO的Error对象。ADO编程模型的元素(1)连接。(2)命令。(3)参数。(4)记录集。(5)字段。(6)错误。(7)属性。(8)集合。(9)事件。ADO支持以下4种类型的集合
①Connection对象具有Errors集合,包含响应与数据源有关的单一错误而创建的所有Error对象。②Command对象具有Parameters集合,包含应用于Command对象的所有Parameter对象。③Recordset对象具有Fields集合,包含Recordset对象中所有列的Field对象。④此外,Connection、Command、Recordset和Field对象都具有Properties集合,它包含各个对象的Property对象。ADO支持以下两种事件①ConnectionEvents。ConnecttionEvents事件在以下情况下发生:连接中的事务开始、被提交或被回滚。执行命令。连接的开始或结束。此事件用于对连接状态变化的报告。②RecordsetEvents。RecordsetEvents事件在以下情况下发生:在Recordset对象的行中进行定位。更改记录集行中的字段。更改记录集中的行。在整个记录集中进行更改。11.2数据库访问控件ADOData控件。DataList控件。DataCombo控件。DataGrid控件。11.2.1ADOData控件(1)选择“工程”菜单中的“部件”命令,打开“部件”属性对话框。(2)在控件列表中,查找并选择MicrosoftADODataControls6.0(OLEDB),如图11.1所示。如果在列表中没有此选项,请下载并安装VisualBasic6.0的升级补丁(VS6SP5)。(3)单击“确定”按钮,可以看到ADOData控件的图标出现在“工具箱”中,如图11.2所示。ADOData控件的常用属性BOFConnectionStringConnectionTimeoutEOFMaxRecordsModePasswordRecordsetRecordSource、UserName【例11.1】ADOData控件的示示例程序序在窗体FormMain中使用一一个ADOData控件读取取表Users中的数据据,并通通过文本本框显示示各个字字段的数数据。单单击ADOData控件中的的前后移移动按钮钮,可以以改变当当前记录录的位置置,文本本框的内内容也会会自动地地发生变变化。设置主窗窗体属性性属性说明(名称)FormMainBorderStyle1–FixedSingleCaption显示部门信息StartUpPosition2–屏幕中心设置ADOData控件的属属性在窗体FrmMain中添加控控件ADOData,控件名名为Adodc1。右键单单击ADOData控件,选选择菜单单中的““ADODC属性”命命令,打打开“属属性页””窗口,,设置ADO控件属性性在“连接接资源””选项中中选择““使用连连接字符符串”,,然后单单击“生生成”按按钮,打打开“数数据链接接属性””窗口。。设置ADO控件属性性选择“OracleProviderforOLEDB”,单击击“下一一步”按按钮,打打开“连连接”页页面。设设置数据据源为orcl,然后输输入用户户名USERMAN和对应的的密码。。设置标签签和文本本框的属属性控件名属性设置值Label1Caption用户编号:Label2Caption用户名称:Text1DataSourceAdodc1DataFieldUSERIDText空Text2DataSourceAdodc1DataFieldUSERNAMEText空控件和DataCombo控件选择“工工程”菜菜单中的的“部件件”命令令,打开开“部件件”属性性对话框框。在控控件列表表中,查查找并选选择MicrosoftDataListControls6.0(OLEDB。单击““确定””按钮,,可以看看到DataList控件和DataCombo控件的图图标出现现在“工工具箱””中。DataList控件和DataCombo控件常用用属性BoundColumnBoundTextDataFieldDataSourceListFieldRowSourceSelectedItem示例程序序此工程包包含一个个窗体FormMain,窗体中中包含了了一个ADOData控件、一一个DataCombo控件和一一个DataList控件。DataCombo控件和DataList控件分别别显示表表Users中所有的的用户名名称。ADOData控件的属属性属性设置值ConnectionStringProvider=OraOLEDB.Oracle.1;Password=USERMAN;PersistSecurityInfo=True;UserID=USERMAN;DataSource=orcl(可以由系统自动生成)CursorType2–adOpenDynamicRecordSourceSELECT*FROMUsersORDERBYUSERIDVisibleFalseDataCombo控件的属属性属性设置值RowSourceAdodc1ListFieldUserNameBoundColumnUserIdStyle2–dbcDropdownList(设置组合框的类型,用户只能选择组合框中的数据)DataList控件的属属性属性设置值RowSourceAdodc1ListFieldUserName控件选择“工工程”菜菜单中的的“部件件”命令令,打开开“部件件”属性性对话框框。在控控件列表表中,查查找并选选择MicrosoftDataGridControls6.0(OLEDB)。示例程序序此工程名名为DataGrid,包含两两个窗体体,一个个是使用用DataGrid控件显示示数据的的FormDataGrid窗体,这这也是工工程的主主窗体;;另一个个是FormShowData窗体,它它用来演演示如何何从DataGrid控件的表表格中读读取一行行数据的的具体内内容。设置主窗窗体属性性属性说明(名称)FormMainBorderStyle1–FixedSingleCaption用户信息表StartUpPosition2–屏幕中心ADOData控件的属属性属性设置值ConnectionStringProvider=OraOLEDB.Oracle.1;Password=USERMAN;PersistSecurityInfo=True;UserID=USERMAN;DataSource=orclCursorType2–adOpenDynamicRecordSourceSELECT*FROMUsersVisibleFalse添加DataGrid控件并设设置属性性设置列标标题和数数据字段段列标题数据字段Column0用户编号USERIDColumn1用户名USERNAMEColumn2密码USERPWDFormShowData窗体属性性属性说明(名称)FrmShowDataBorderStyle1–FixedSingleCaption显示当前数据StartUpPosition2–屏幕中心FormShowData窗体11.3常用ADO对象Connection对象Command对象Recordset对象Field对象添加引用用选择菜单单“工程程”/“引用””,打开开“引用用”对话话框,在在引用列列表中选选中“MicrosoftActivexDataObjects2.6Library”(不同同环境下下ADO的版本号号可能不不同)对象创建Connection对象的方方法如下下:DimcnnAsNewADODB.ConnectionConnectionString属性ConnectionString是连接字字符串,,指定用用于建立立连接数数据源的的信息。。可以使使用ODBC数据源来来表示连连接字符符串,代代码如下下:DimcnnAsNewADODB.Connectioncnn.ConnectionString="DSN=mydata;".\mydata是创建的的ODBC数据源名名。ConnectionString属性可以通过过直接设设置数据据源提供供者(Provider)和数据据库文件件的方法法表示连连接字符符串,代代码如下下:DimcnnAsNewADODB.Connectioncnn.ConnectionString="Provider=OraOLEDB.Oracle.1;Password=USERMAN;PersistSecurityInfo=True;UserID=USERMAN;DataSource=orcl"UserID表示访问问数据库库的用户户名,Password表示密码码,DataSource表示数据据库实例例。ConnectionTimeout属性性ConnectionTimeout属性性指示在在终止尝尝试和产产生错误误之前执执行命令令需等待待的时间间,默认认值为30s。。Mode属性Mode属性指指定Connection对对象修改改数据的的权限。。常量说明adModeUnknown默认值。表明权限尚未设置或无法确定adModeRead表明权限为只读adModeWrite表明权限为只写adModeReadWrite表明权限为读/写adModeShareDenyRead防止其他用户使用读权限打开连接adModeShareDenyWrite防止其他用户使用写权限打开连接adModeShareExclusive防止其他用户打开连接adModeShareDenyNone防止其他用户使用任何权限打开连接State属性性State属性性返回Connection对象的的状态。。常量说明adStateClosed默认,指示对象是关闭的adStateOpen指示对象是打开的adStateConnecting指示
Recordset对象正在连接adStateExecuting指示
Recordset对象正在执行命令adStateFetching指示
Recordset对象的行正在被读取Open方法Open方法用于于打开到到数据源源的连接接。connection.OpenConnectionString,UserID,Password,OptionsConnectionString是连接字字符串。。UserID是访问数数据库的的用户名名。Password是密码。。Options是连接选选项。Close方法法Close方法法用于关关闭到数数据源的的连接。。访问数数据库完完成后,,为了节节省资源源,需要要将数据据库连接接关闭。。对对象它的常用用属性和和方法如如下。ActiveConnection属性::通过过设置置ActiveConnection属性使使打开开的连连接与与Command对象关关联。。CommandText属性::定义义命令令(例例如SQL语句))的可可执行行文本本。Execute方法::执行行在CommandText属性中中指定定的查查询、、SQL语句或或存储储过程程。如如果CommandText属性指指定按按行返返回查查询,,执行行所产产生的的结果果将存存储在在新的的Recordset对象中中。如如果该该命令令不是是按行行返回回查询询,则则返回回关闭闭的Recordset对象。。11.3.3Recordset对象象Recordset对象的的常用用属性性和方方法如如下。。ActiveConnection属性::通过过设置置ActiveConnection属性使使打开开的连连接与与Command对象关关联。。AbsolutePosition属性::指定定Recordset对象当当前记记录的的序号号位置置。BOF、EOF属性::BOF指示当当前记记录位位置位位于Recordset对象的的第一一个记记录之之前。。EOF指示当当前记记录位位置位位于Recordset对象的的最后后一个个记录录之后后。MaxRecord属性::指定定通过过查询询返回回Recordset的记录录的最最大数数目。。例如如只需需要返返回前前10条记录录时,,可以以将MaxRecord属性设设置为为10。RecordCount属性::返回回Recordset对象中中记录录的当当前数数目。。常用方方法Move方方法::在记记录集集中移移动指指针。。MoveFirst、MoveLast、、MoveNext和MovePrevious方方法法:在在指定定的Recordset对象象中移移动到到第一一个、、最后后一个个、下下一个个或前前一个个记录录并使使该记记录成成为当当前记记录。。Open方方法使用Open方法可可打开开代表表基本本表、、查询询结果果或者者以前前保存存的Recordset中记录录的游游标。。Open方法的的语法法如下下:recordset.OpenSource,ActiveConnection,CursorType,LockType,OptionsSource是记录录源,,它可可以是是一条条SQL语句、、一个个表或或一个个存储储过程程等。。ActiveConnection指定相相应的的Connection对象。。C
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度私房承包建筑合同书:装配式建筑构件运输与安装服务协议
- 2025年度校方责任险赔偿协议书:校园学生实习安全事故赔偿协议
- 二零二五年度档口饮品品牌代理合作协议
- 二零二五年度企业对个人项目收益对赌协议
- 2025年度解除房屋租赁合同及后续物业管理交接协议
- 社会主义初级阶段的思考试题及答案
- 2024年秋二年级上册数学彩色课课贴
- 二零二五年度保障性住房集资协议
- 二零二五年度幼师实习实训基地实习指导与管理合同
- 二零二五年度婚前房产保障协议及婚后家庭财产保险合同
- 安徽省合肥市瑶海区2024年中考三模考试道德与法治历史试题-初中历史与社会(附答案解析)
- NB/T 11446-2023煤矿连采连充技术要求
- 我的动物朋友习作省公开课一等奖新名师课比赛一等奖课件
- GB/T 43934-2024煤矿土地复垦与生态修复技术规范
- 第8课《建设法治中国》第1框《科学立法严格执法公正司法全民守法》-【中职专用】《职业道德与法治》同步课堂课件
- SY-T 6966-2023 输油气管道工程安全仪表系统设计规范
- 2024年信阳职业技术学院单招职业技能测试题库及答案解析
- 2024年广东东莞市公安局石排分局辅警招聘笔试参考题库附带答案详解
- 乳果糖使用说明书
- 小学数学计算专项训练之乘法分配律(提公因数)
- 陕西省2023年中考英语试题(附真题答案)
评论
0/150
提交评论