您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 东北大学-数据库开发技术-课件-第7章--Delphi数据库系统设计技术
第7章Delphi数据库系统设计技术7.1数据库应用系统实施的步骤与方法7.2Delphi两层数据库应用系统的支持技术7.3数据库引擎管理器7.4连接ODBC数据库7.5数据集控件7.6数据控制控件7.7报表控件7.1数据库应用系统实施的步骤与方法图7-1数据库系统实现步骤和阶段成果开发数据库应用系统是Delphi的强项。要建立数据库应用系统,除了要熟悉有关Delphi组件和objectPascal外,还要精通DBMS及数据库建立的方法。数据库应用系统设计和实现步骤如下:7.2Delphi两层数据库应用系统的支持技术数据库应用系统主要采用两层结构和三层结构的架构。两层数据库系统是指C/S(客户/服务器)结构或B/S(浏览器/服务器)结构,而三层结构是客户、应用服务器和数据库服务器的系统结构。delphi7支持两层数据库应用系统结构的技术有BDE技术、ADO技术、dbExpress技术和InterBass技术4种。作为重点,主要介绍BDE技术及使用方法。7.2.1基于BDE技术的两层数据库系统BDE为Delphi数据库应用程序访问各种数据库提供了一致的接口。它具有以下一些特点:Ø通过BDE访问任何一种格式的数据库,用户不必修改程序代码,只需在BDE中设置新的数据库的服务器名或者路径即可。ØBDE非常适合开发大型的客户机/服务器应用程序.Ø如果要让BDE能访问一个新的数据库,只要在系统中安装新数据库的BDE驱动程序或者ODBC驱动程序就可以了。ØBDE是32位的数据库引擎,支持多线程和有优先级的多任务处理,多个应用程序可以同时运行并访问同一个数据库。基于BDE技术的两层数据库系统的结构如图图7-2基于BDE技术的两层数据库系统的结构7.2.2ADO技术支持的两层数据库系统ADO(ActiveXDataObject)是微软公司推出的一种数据访问技术,它和ODBC(OpenDatabaseConnection)、RDS(RemoteDataService)一起称为MDAC(MicroSofeDataAccessCompenents)。使用ADO技术时,需要安装MDAC,而Delphi7在安装时也会自动安装MDAC。采用ADO技术也可以通过ODBC访问数据源。基于ADO技术的两层数据库系统的结构如图图7-2基于ADO技术的两层数据库系统的结构7.2.3dbExpress技术支持的两层数据库系统dbExpress是一种数据访问标准,它包括一组支持数据库存取的驱动程序和组件。dbExpress可以用于windows下的Delphi,也可以用于Linux平台上的Kylix,能够进行不同平台的数据交换,便于开发跨平台的数据库应用系统。dbExpress支持两层的数据库系统,也支持多层数据库系统。基于dbExpress技术的两层数据库系统的结构如图图7-2基于dbExpress技术的两层数据库系统的结构7.2.4Interbase技术支持的两层数据库系统Interbase是Borland公司开发的一种关系数据库管理系统。Delphi提供了专门的Interbase组件,可以快速高数地访问Interbase数据库。基于Interbase的两层数据库系统的系统结构如图;7.3数据库引擎管理器1.数据库别名的管理2.驱动程序的管理3.系统配置图7-2BDEAdministrator运行界面图7-3设置数据库驱动程序名图7-4Paradox数据库的BDE别名图7-5BDEAdministrator管理驱动程序的界面图7-6BDEAdministrator的系统配置7.4连接ODBC数据库配置ODBC驱动程序:安装ODBC驱动程序,打开Windows的控制面板,双击“ODBCDataSource(32bit)”,打开ODBCDataSourceAdministrator对话框,如图7-7所示。单击“Add”按钮,就会打开创建新数据源对话框,如图7-8所示。这里从驱动程序列表中选择“MicrosoftAccessDriver(*.mdb)”,并单击“完成”按钮,则会打开ODBCMicrosoftAccessSetup对话框,如图7-9所示。选择Configuration页框,展开Drivers节点,然后用鼠标右键单击ODBC,从弹出的菜单中选择“New”选项,这时将打开NewODBCDriver对话框,如图7-10所示。接着,展开Database页框,选择“Object”菜单上的“New”命令,打开NewDatabaseAlias对话框,如图7-11所示。其中,选择ODBC-access作为数据库驱动程序,单击“OK”。输入完整的别名accesstry如图7-12所示。最后,选择Object菜单上的Apply命令,将新建的别名保存到BDE配置文件中。图7-7ODBCDataSourceAdministrator对话框图7-8创建新数据源对话框图7-9ODBCMicrosoftAccessSetup对话框图7-10NewODBCDriver对话框图7-11NewDatabaseAlias对话框图7-12新的别名7.5数据集控件7.5.1数据访问控件简介7.5.2数据集控件及其应用7.5.3TTable控件及其使用7.5.4TQuery控件及其使用7.5.5TDataSource控件及其使用7.5.1数据访问控件简介图7-34BDE控件栏VCL组件的公共属性7.5.2数据集控件及其应用1.数据集控件的状态非活动状态(Inactive)浏览状态(Browse)编辑状态(Edit)插入状态(Insert)查找状态(SetKey)处理计算字段状态(CalcFields)2.数据集的打开和关闭(1)打开数据集方法1:通过设置数据集控件的Active属性为True来打开与数据集相连的数据库表。方法2:调用数据集控件的Open方法,打开与数据集控件相连的数据库表,这种方法只能在程序运行过程中通过程序进行。(2)关闭数据集方法1:设置数据集控件的Active属性为False,以关闭与数据集控件相连的数据库表。方法2:调用Close方法以关闭与数据集控件相连的数据集表。3.数据集的浏览表7-1数据集的浏览方法方法功能First移动记录指针到数据集中的第一条记录Next移动记录指针到数据集中的下一条记录Prior移动记录指针到数据集中的前一条记录Last移动记录指针到数据集中的最后一条记录MoveBy(n)n是正,将记录指针下移n条记录;否则,上移n条记录属性功能BOF当记录指针位于数据集开头时,属性值为True,否则为FalseEOF当记录指针位于数据集结尾时,属性值为True,否则为False表7-2数据集的浏览属性4.数据集中的数据维护表7-3数据集中数据维护的方法方法功能Edit将数据集置为编辑状态Append保存所有被修改的记录,然后将记录指针移到表中的最后一条记录,且将数据集置为插入状态Insert保存所有被修改的记录,将数据集置为插入状态Post将插入或者被修改的记录写回到数据表,当保存成功时数据集回到浏览状态,若保存不成功则数据集恢复原来状态方法功能Cancel取消当前的操作且将数据集置为浏览状态Delete删除当前记录指针所在的记录且将数据集置为浏览状态AppendRecord在数据表的最后插入一条新记录,记录的各个字段值作为AppendRecord的参数传递给新记录InsertRecord在当前指针所在记录的后面插入一条新记录,记录的各个字段值作为InsertRecord的参数传递给新记录。SetFields修改当前记录,字段名和相应的字段值作为SetFields的参数7.数据集的书签有关书签操作,Delphi提供了三个方法:GetBookMarkGotoBookMarkFreeBookMark7.数据集控件与数据控制控件的连接数据集控件具有三个方法,用于控制数据集控件和与其相连的数据控制控件之间的连接,以及控制数据控制控件的显示。它们是DisableControls方法、EnableControls方法、Refresh方法。⒎数据集控件的事件ØBeforeOpen/Afteropen:在数据集控件打开之前/之后被触发。ØBeforeClose/Afterclose:在数据集控件关闭之前/之后被触发。ØBeforeInsert/AfterInsert:在数据集控件进入插入状态之前/之后被触发。ØBeforeEdit/AfterEdit:在数据集控件被编辑之前/之后被触发。ØBeforePost/AfterPost:在数据集控件保存被修改的记录之前/之后被触发。ØBeforeCancel/AfterCancel:在数据集控件取消进一步操作之前/之后被触发。ØBeforeDelete/AfterDelete:在数据集控件删除当前记录之前/之后被触发。ØOnNewRecord:当建立一条新记录时被触发。ØOnCalcFields:当为表中的计算字段计算字段值时被触发。7.5.3TTable控件及其使用1.TTabel控件的主要属性(1)DatabaseName属性和TableName属性(2)KeyExclusive属性(3)IndexFields属性和IndexFieldsCount属性(4)IndexName属性和IndexFieldNames属性(5)Exclusive属性(6)ReadOnly属性和CanModify属性2.TTable控件的方法及应用(1)设定数据库表的使用范围(2)查询数据库表(3)生成数据库表(如表7-4所示)控件名属性属性值Table1DatabaseNameDBDEMOSTablenameEmployee.dbActiveTrueDataSource1DataSetQuery1Label1Caption雇员号:Label2Caption姓名:Label3Caption提示信息Button1Caption查询Button2Caption退出表7-4各个控件的属性设置7.5.4TQuery控件及其使用1.TQuery控件的主要属性和方法(7)ExecSQL方法(4)RequestLive属性(1)DatabaseName属性(8)Close方法(5)UniDirectional属性(2)SQL属性(9)Prepare方法(6)Open方法(3)Params和ParamCount属性2.TQuery控件的静态SQL查询使用TQuery控件建立静态SQL查询的步骤如下:(1)为TQuery控件设置DatabaseName属性(2)为TQuery控件设置SQL属性(3)设置TDataSource控件的DataSet属性(4)连接数据控制控件和TQuery控件(5)执行SQL语句3.TQuery控件的动态SQL语句在程序中为SQL语句中的参数赋值通常有三种方法:(1)使用TQuery控件的Params属性(2)使用TQuery控件的ParamByName方法(3)使用TParams对象的ParamValues属性控件名属性属性值Query1DatabaseNameDBDEMOSDataSource1DataSetQuery1DBGrid1DatasourceDataSource1Button1Caption执行(&E)Button2Caption清空(&C)BitButton1Caption退出(&X)KindbkCloseMemo1Lines清除其中内容表7-5各个控件的属性设置7.5.5TDataSource控件及其使用1.TDataSource控件的属性(1)DataSet属性、(2)Enable属性、(3)AutoEdit属性2.TDataSource控件的事件(1)OnDataChange事件、(2)OnUpdataData事件、(3)OnStateChange事件7.6数据控制控件7.6.1数据控制控件简介7.6.2TDBGrid控件7.6.3TDBNavigator控件7.6.4TDBText控件7.6
本文标题:东北大学-数据库开发技术-课件-第7章--Delphi数据库系统设计技术
链接地址:https://www.777doc.com/doc-5069025 .html