《第八章数据库知识与其在Delphi中应简》由会员分享,可在线阅读,更多相关《第八章数据库知识与其在Delphi中应简(17页珍藏版)》请在金锄头文库上搜索。
1、数据库应用程序开发ADOADO数据库访问技术数据库访问技术多坷靳佣公慎疙宗螺恒皖短清毯锋奄躯呜茫殴拄魏码贾辨镁毒樟镊唾冠毖第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简Delphi数据库访问技术DelphiDelphi主要有主要有主要有主要有4 4种数据库访问技术:种数据库访问技术:种数据库访问技术:种数据库访问技术:BDEBDE、dbExpressdbExpress、IBX IBX 、 ADO ADO 。 BDEBDE为早期的唯一数据库访问技术,由于新技术的为早期的唯一数据库访问技术,由于新技术的为早期的唯一数据库访问技术,由于新技术的为早期的唯一数据库访问
2、技术,由于新技术的出现,出现,出现,出现,BorlandBorland早已停止开发它了。早已停止开发它了。早已停止开发它了。早已停止开发它了。 dbExpressdbExpress为跨平台且独立于数据库的访问技术,为跨平台且独立于数据库的访问技术,为跨平台且独立于数据库的访问技术,为跨平台且独立于数据库的访问技术,但只能访问但只能访问但只能访问但只能访问SQLSQL数据库。数据库。数据库。数据库。 IBXIBX不是独立于服务器的数据库引擎,只能用于访不是独立于服务器的数据库引擎,只能用于访不是独立于服务器的数据库引擎,只能用于访不是独立于服务器的数据库引擎,只能用于访问特定数据库服务器。问特定
3、数据库服务器。问特定数据库服务器。问特定数据库服务器。 ADOADO是在微软的数据访问是在微软的数据访问是在微软的数据访问是在微软的数据访问OLE DBOLE DB技术上实现的,技术上实现的,技术上实现的,技术上实现的,若在若在若在若在windowswindows上使用上使用上使用上使用SQL2000SQL2000或或或或ACCESSACCESS作为后台作为后台作为后台作为后台数据库,则使用数据库,则使用数据库,则使用数据库,则使用ADOADO最好。最好。最好。最好。僵侄徽姆裤丹亮掳静唁杆眺盼揩癣您滁温舍骡轻你拓逢纹虫师剪骏天菲棵第八章数据库知识与其在Delphi中应简第八章数据库知识与其在D
4、elphi中应简8/11/20242中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院Delphi的数据库连接方式及特点 集中式集中式集中式集中式 指所有数据集组件通过专门的数据库指所有数据集组件通过专门的数据库指所有数据集组件通过专门的数据库指所有数据集组件通过专门的数据库连接组件连接组件连接组件连接组件(ADOConnectionADOConnection)连接到同一个数据库的方式。)连接到同一个数据库的方式。)连接到同一个数据库的方式。)连接到同一个数据库的方式。 分散式分散式分散式分散式 指所有数据集组件通过各自的属性(指所有数据集组件通过各自的属性(指所
5、有数据集组件通过各自的属性(指所有数据集组件通过各自的属性(ConnectionStringConnectionString)分别分别分别分别连接连接连接连接到各自数据库的方式。到各自数据库的方式。到各自数据库的方式。到各自数据库的方式。 两种方式的特点两种方式的特点两种方式的特点两种方式的特点 集中式:便于管理,数据同步不易出错,但在访问多个数据库集中式:便于管理,数据同步不易出错,但在访问多个数据库集中式:便于管理,数据同步不易出错,但在访问多个数据库集中式:便于管理,数据同步不易出错,但在访问多个数据库时需要修改属性。时需要修改属性。时需要修改属性。时需要修改属性。 分散式:可以分别连接
6、不同的数据库,但数据库名改变,则每分散式:可以分别连接不同的数据库,但数据库名改变,则每分散式:可以分别连接不同的数据库,但数据库名改变,则每分散式:可以分别连接不同的数据库,但数据库名改变,则每个数据集组件都要修改属性;另外,数据读取常发生不同步的个数据集组件都要修改属性;另外,数据读取常发生不同步的个数据集组件都要修改属性;另外,数据读取常发生不同步的个数据集组件都要修改属性;另外,数据读取常发生不同步的现象。现象。现象。现象。堪路骤雹藻厌驴札厩熙吱碑寂彼悄豆片铅黎抬说诉程筒饥麓修揪纯罩椭劣第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/20243
7、中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院ADO数据库访问技术组成集中式数据库连接数据库连接TADOConnectionTADOConnection数据集数据集TADODataSetTADODataSet数据集数据集TADOTableTADOTable数据集数据集TADOQueryTADOQuery数据源数据源TDataSourceTDataSource数据控制数据控制DBGridDBGrid数据控制数据控制DBNavigatorDBNavigator 分散式数据集数据集TADODataSetTADODataSet数据集数据集TADOTableTADOTa
8、ble数据集数据集TADOQueryTADOQuery数据源数据源TDataSourceTDataSource数据控制数据控制DBGridDBGrid数据控制数据控制DBNavigatorDBNavigator 着钻灾玖蓉野换铁滴擅枉只值心音剑栅动此堂丘码瞳驴竟妙蚤力零裔忘面第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/20244中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院1.TADOConnection组件ADOConnection组件用来建立与数据库之间连接的组件,各种dbGo的数据集及其操作组件,可以共用该连
9、接来执行命令。读取数据并执行相应操作。常用属性常用属性常用属性常用属性 ConnectionStringConnectionString:用来指明数据库的连接信息:用来指明数据库的连接信息:用来指明数据库的连接信息:用来指明数据库的连接信息 LgoinPromptLgoinPrompt:用来控制登录数据库方法,:用来控制登录数据库方法,TrueTrue表表示检测登录,示检测登录,FalseFalse表示直接登录。表示直接登录。食其容仔捍焚峦乏们关趁墒筷冯哦柱嘶株尊市捌族替环于檬感私偏斤虏驻第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/20245中国海
10、洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院ADOConnection组件连接方法双击ADOConnection组件侯构凑意匣硝涟岂拖柏啃窗谦膛洽荣藉捧掖胳离避籽燃丁崭瞩界台漱姨宠第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/20246中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院数据连接属性垢员钠操湾漆框洼铭憎脱滩沁阁骑拆岿奶勋拖启讼政遭踞叫花兼匿秋恫摈第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/20247中国海洋大学青岛学院中国海洋大学青
11、岛学院中国海洋大学青岛学院中国海洋大学青岛学院ADOConnection1的属性设置属性属性值ConnectionStringProvider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=数据库名;Data Source=服务器名;LoginPromptfalse隋皇胶心盖攫卸官我聂迷瓶申斋鹏矫谊械掏姜尹惑趟约慢齿石镰尔现解牙第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/20248中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院2.
12、TADOTable组件用于处理单一的关系表。常用属性:Connection:连接到数据集,即连到adoconnection组件上。Tablename:指定数据集中的某张表,作为数据源 常用方法:常用方法: CloseClose:关闭数据集:关闭数据集 OpenOpen:打开数据集:打开数据集注意:动态更换数据源(即重新给注意:动态更换数据源(即重新给tablenametablename赋值)时,必须是赋值)时,必须是在关闭状态下。在关闭状态下。Adotable1.close;Adotable1.close;Adotable1.tablename:=student;Adotable1.table
13、name:=student;Adotable1.open;Adotable1.open;谱道婉瀑酸哥磕拆娠吨扎迈位诈挟浆席承角率硫墨临枣邯贼莉哨炊剖瘴显第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/20249中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院2.TADOQuery组件建立在SQL基础上,用于复杂的SQL查询或运行一组SQL命令。常用属性: ConnectionConnection:连接到数据集,即连到:连接到数据集,即连到adoconnectionadoconnection组件上。组件上。 SQLSQL:
14、StringString型。设置执行查询所需的型。设置执行查询所需的SQLSQL语句。语句。注意:在注意:在动态改变动态改变sqlsql查询语句查询语句时,须按以下步骤执行:时,须按以下步骤执行:Adoquery1.close;Adoquery1.close;Adoquery1.sql.clear;Adoquery1.sql.clear;Adoquery1.sql.add(Adoquery1.sql.add(查询语句查询语句) )Adoquery1.open;Adoquery1.open; ActiveActive:booleanboolean型。型。TrueTrue表示执行表示执行SQLSQ
15、L中的语句,否则不执中的语句,否则不执行。行。 Recordcount:integerRecordcount:integer型。返回查询结果的记录数。型。返回查询结果的记录数。场驻坤踊非把横炔逸烧朽蹄距茶碎伪碟镶卖疑踌鹿钓彝节题被牌蓟随赚绕第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/202410中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院3.TDataSourceTDataSource组件提供了连接数据集组件(如:TTable,TQuery,TStoredProc)与数控制组件(例如:TDBGrid)的纽带。属于
16、DataAccess标签常用属性 DataSetDataSet属性:指明该数据源组件属性:指明该数据源组件连接的数据集合名。连接的数据集合名。署烤喻厅蔚漫甘鞘胸困钵瘩榔坎翻蔓抚然耪魄渔燥幸否谈张逃阶桃酉挠宪第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/202411中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院4.TDBGrid数据控制,显示数据。属于Data Controls标签属性 DatasourceDatasource数据源。数据源。蜗袭鸭怨啊肪导滨冈铭抚哼停啤狮勇旨部亭扒竭裤荆辽摸积差棱弓理王区第八章数据库知
17、识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/202412中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院5建立一个数据库应用程序设计界面 使用组件:使用组件: TADOConnection TADOConnection 连接数据库连接数据库连接数据库连接数据库 (TADOTable TADOTable )TADOQuery TADOQuery 查询数据(数据集)查询数据(数据集)查询数据(数据集)查询数据(数据集) TDataSource TDataSource 将查询结果连接成数据源将查询结果连接成数据源将查询结果连接成数据源将
18、查询结果连接成数据源 TDBGrid TDBGrid 显示数据显示数据显示数据显示数据配置属性配置属性编写代码编写代码例:成绩查询窗体例:成绩查询窗体搭抉搞侗脓仍苏尖乾泥霄辑夷迟瘸耸彩窃首戈勋慢阁搬唁官亏党牡纂戎瓶第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/202413中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院总结ADO方式开发数据库应用软件 TADOConnection,TADOTable,TADOQuery,TDatTADOConnection,TADOTable,TADOQuery,TDataSource
19、,TDBGridaSource,TDBGrid等等护礁财瞪础勿蝉阻喇顾剐梁比匙圾傲腋浊搂妮千腐譬嘿狰藩孔婚颧杠贾当第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/202414中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院数据集组件的属性和方法属性 Fieldbyname(const fieldname:string).valueFieldbyname(const fieldname:string).value 取指定字段的字段值取指定字段的字段值 如如edit1.text:=adoquery1.fieldbyname(
20、edit1.text:=adoquery1.fieldbyname(姓名姓名).value).value bofbof、eofeof 只读属性。判断当前记录的位置是否在数据集的开始或末只读属性。判断当前记录的位置是否在数据集的开始或末尾。尾。方法方法 EditEdit:当前记录设置为编辑状态。:当前记录设置为编辑状态。 AppendAppend:增加一条空记录,并处于编辑状态。:增加一条空记录,并处于编辑状态。 CancelCancel:取消对当前记录的操作,并处于浏览状态。:取消对当前记录的操作,并处于浏览状态。繁炙偏泥铜涤政辐钾剿臻唬鼠重综某籍恼慑皋忧耙贞掌议秘铲寥喻镶跌栓第八章数据库知识
21、与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/202415中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院Post:提交当前记录(保存)。Delete:删除当前记录。First:首记录为当前记录。Prior:上一条记录为当前记录。Next:下一条记录为当前记录。Last:最后一条记录为当前记录。萨轨蜜蛔酷茄舞打照痛恩得泰虽昭涅跳轧骗苑明该诀诗续呜吠遭向磁兆鼠第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/202416中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院数据控制组件属性Datasource:指定数据源组件Datafield:指定要显示的数据源所对应的字段名称Readonly:是否为只读。Dbgrid、dbtext、dbedit、dbcombobox、dbnavigator奋巷耀茧上头剃半林誉西透按膏币货嚎峰搭恒塞这袜注揖帜宿蹈釉休暂维第八章数据库知识与其在Delphi中应简第八章数据库知识与其在Delphi中应简8/11/202417中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院中国海洋大学青岛学院