东北大学数据库开发技术课件第7章Delphi数据库系统设计技术.ppt_第1页
东北大学数据库开发技术课件第7章Delphi数据库系统设计技术.ppt_第2页
东北大学数据库开发技术课件第7章Delphi数据库系统设计技术.ppt_第3页
东北大学数据库开发技术课件第7章Delphi数据库系统设计技术.ppt_第4页
东北大学数据库开发技术课件第7章Delphi数据库系统设计技术.ppt_第5页
已阅读5页,还剩115页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章 Delphi数据库系统设计技术,7.1 数据库应用系统实施的步骤与方法 7.2 Delphi 两层数据库应用系统的支持技术 7.3 数据库引擎管理器 7.4 连接ODBC数据库 7.5 数据集控件 7.6 数据控制控件 7.7 报表控件,7.1 数据库应用系统实施的步骤与方法,图7-1 数据库系统实现步骤和阶段成果,开发数据库应用系统是Delphi的强项。要建立数据库应用系统,除了要熟悉有关Delphi组件和object Pascal外,还要精通DBMS及数据库建立的方法。数据库应用系统设计和实现步骤如下:,7.2 Delphi 两层数据库应用系统的支持技术,数据库应用系统主要采用两层结构和三层结构的架构。两层数据库系统是指C/S(客户服务器)结构或B/S(浏览器服务器)结构,而三层结构是客户、应用服务器和数据库服务器的系统结构。delphi 7支持两层数据库应用系统结构的技术有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.2 ADO技术支持的两层数据库系统,ADO(ActiveX Data Object)是微软公司推出的一种数据访问技术,它和ODBC(Open Database Connection) 、RDS(Remote Data Service)一起称为MDAC(MicroSofe Data Access Compenents)。使用ADO技术时,需要安装MDAC,而Delphi 7在安装时也会自动安装MDAC。采用ADO技术也可以通过ODBC访问数据源。,基于ADO技术的两层数据库系统的结构如图,图7-2 基于ADO技术的两层数据库系统的结构,7.2.3 dbExpress技术支持的两层数据库系统,dbExpress是一种数据访问标准,它包括一组支持数据库存取的驱动程序和组件。 dbExpress可以用于windows下的Delphi,也可以用于Linux平台上的Kylix,能够进行不同平台的数据交换,便于开发跨平台的数据库应用系统。 dbExpress支持两层的数据库系统,也支持多层数据库系统。,基于 dbExpress 技术的两层数据库系统的结构如图,图7-2 基于dbExpress技术的两层数据库系统的结构,7.2.4 Interbase技术支持的两层数据库系统,Interbase是Borland公司开发的一种关系数据库管理系统。Delphi提供了专门的Interbase组件,可以快速高数地访问Interbase数据库。基于Interbase的两层数据库系统的系统结构如图;,7.3 数据库引擎管理器,1数据库别名的管理 2驱动程序的管理 3系统配置,图7-2 BDE Administrator运行界面,图7-3 设置数据库驱动程序名,图7-4 Paradox数据库的BDE别名,图7-5 BDE Administrator管理驱动程序的界面,图7-6 BDE Administrator的系统配置,7.4 连接ODBC数据库,配置ODBC驱动程序: 安装ODBC驱动程序,打开Windows的控制面板,双击“ODBC Data Source(32bit)”,打开ODBC Data Source Administrator对话框,如图7-7所示。 单击“Add”按钮,就会打开创建新数据源对话框,如图7-8所示。,这里从驱动程序列表中选择“Microsoft Access Driver(*.mdb)”,并单击“完成”按钮,则会打开ODBC Microsoft Access Setup对话框,如图7-9所示。选择Configuration页框,展开Drivers节点,然后用鼠标右键单击ODBC,从弹出的菜单中选择“New”选项,这时将打开New ODBC Driver对话框,如图7-10所示。,接着,展开Database页框,选择“Object”菜单上的“New”命令,打开New Database Alias对话框,如图7-11所示。其中,选择ODBC-access作为数据库驱动程序,单击“OK”。输入完整的别名accesstry如图7-12所示。最后,选择Object菜单上的Apply命令,将新建的别名保存到BDE配置文件中。,图7-7 ODBC Data Source Administrator对话框,图7-8 创建新数据源对话框,图7-9 ODBC Microsoft Access Setup对话框,图7-10 New ODBC Driver对话框,图7-11 New Database Alias对话框,图7-12 新的别名,7.5 数据集控件,7.5.1 数据访问控件简介 7.5.2 数据集控件及其应用 7.5.3 TTable控件及其使用 7.5.4 TQuery控件及其使用 7.5.5 TDataSource控件及其使用,7.5.1 数据访问控件简介,图7-34 BDE控件栏,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 数据集的浏览方法,表7-2 数据集的浏览属性,4数据集中的数据维护,表7-3 数据集中数据维护的方法,7.数据集的书签 有关书签操作,Delphi提供了三个方法: GetBookMark GotoBookMark FreeBookMark,7.数据集控件与数据控制控件的连接 数据集控件具有三个方法,用于控制数据集控件和与其相连的数据控制控件之间的连接,以及控制数据控制控件的显示。它们是DisableControls方法、EnableControls方法、Refresh方法。,数据集控件的事件 BeforeOpen/Afteropen:在数据集控件打开之前/之后被触发。 BeforeClose/Afterclose:在数据集控件关闭之前/之后被触发。 BeforeInsert/AfterInsert:在数据集控件进入插入状态之前/之后被触发。 BeforeEdit/AfterEdit:在数据集控件被编辑之前/之后被触发。, BeforePost/AfterPost:在数据集控件保存被修改的记录之前/之后被触发。 BeforeCancel/AfterCancel:在数据集控件取消进一步操作之前/之后被触发。 BeforeDelete/AfterDelete:在数据集控件删除当前记录之前/之后被触发。 OnNewRecord:当建立一条新记录时被触发。 OnCalcFields:当为表中的计算字段计算字段值时被触发。,7.5.3 TTable控件及其使用,1TTabel控件的主要属性 (1)DatabaseName属性和TableName属性 (2)KeyExclusive属性 (3)IndexFields属性和IndexFieldsCount属性 (4)IndexName属性和IndexFieldNames属性 (5)Exclusive属性 (6)ReadOnly属性和CanModify属性,2TTable控件的方法及应用 (1)设定数据库表的使用范围 (2)查询数据库表 (3)生成数据库表(如表7-4所示),表7-4 各个控件的属性设置,7.5.4 TQuery控件及其使用,1TQuery控件的主要属性和方法,2TQuery控件的静态SQL查询 使用TQuery控件建立静态SQL查询的步骤如下: (1)为TQuery控件设置DatabaseName属性 (2)为TQuery控件设置SQL属性 (3)设置TDataSource控件的DataSet属性 (4)连接数据控制控件和TQuery控件 (5)执行SQL语句,3TQuery控件的动态SQL语句 在程序中为SQL语句中的参数赋值通常有三种方法: (1)使用TQuery控件的Params属性 (2)使用TQuery控件的ParamByName方法 (3)使用TParams对象的ParamValues属性,表7-5 各个控件的属性设置,7.5.5 TDataSource控件及其使用,1TDataSource控件的属性 (1)DataSet属性、(2)Enable属性、(3)AutoEdit属性 2TDataSource控件的事件 (1)OnDataChange事件、(2)OnUpdataData事件、(3)OnStateChange事件,7.6 数据控制控件,7.6.1 数据控制控件简介 7.6.2 TDBGrid控件 7.6.3 TDBNavigator控件 7.6.4 TDBText控件 7.6.5 TDBEdit控件 7.6.6 TDBMemo控件 7.6.7 TDBImage控件,7.6.8 TDBListBox控件 7.6.9 TDBComboBox控件 7.6.10 TDBLookupListBox控件 7.6.11 TDBLookupComboBox控件 7.6.12 TDBCheckBox控件 7.6.13 TDBRadioGroup控件 7.6.14 其他控件,图7-42 DataControls控件页上的控件,7.6.1 数据控制控件简介,数据控制控件是通过TDatasource控件连接到TTable控件中具体的字段控件的,因而数据控制控件具有一些共同的属性,用于连接TDatasource控件和TField控件。 (1)Datasource属性 (2)DataField属性 (3)Enabled属性 (4)ReadOnly属性,表7-6 各数据控制控件概述,7.6.2 TDBGrid控件,1TDBGrid控件的主要属性: (1)Options属性 (2)DragMode属性 (3)DefalultDrawing属性 (4)Columns属性,图7-44 字段编辑对话框,2TDBGrid控件的主要事件及应用,表7-7 TDBGrid控件中的主要事件,图7-45 程序的设计界面,表7-8 各控件的主要属性设置,7.6.3 TDBNavigator控件,1TDBNavigator控件的主要属性 (1)VisibleButtons属性 (2)ShowHint属性 (3)Hints属性,图7-47 TDBNavigator控件,表7-9 TDBNavigator控件中的控制按钮,2TDBNavigator控件的主要事件 TDBNavigator控件一个重要的事件是OnClick事件,它在TDBNavigator控件的某个按钮被单击并执行相应的操作之后触发。基本格式如下: procedure TForm1.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);,7.6.4 TDBText控件,1TDBText控件的主要属性 在应用程序中一般要使用TDBText控件的DataSource属性和DataField属性。 2TDBText控件的应用举例 用TDBText控件显示Customer.DB表中的Company字段信息,可以用如图7-50所示的窗体来实现。主要属性设置如表7-10所示。,图7-50 程序设计界面,表7-10 图中各控件的属性设置,7.6.5 TDBEdit控件,1TDBEdit控件的主要属性 TDBEdit控件专门用于显示编辑数据库表中当前记录的字段值。 2TDBEdit控件的应用举例 在图7-51所示的窗体中,TDBEdit控件用于显示和编辑Customer.DB表中当前记录的三个指定的字段,窗体中各控件的属性设置如表7-11所示,程序运行之后如图7-52所示。,图7-51 用TDBEdit控件显示和编辑表中的数据,表7-11 图中各控件的属性设置,图7-52 用TDBEdit控件显示和修改表中的数据,7.6.6 TDBMemo控件,TDBMemo控件的主要属性: (1)ReadOnly属性 (2)MaxLength属性 (3)ScrollBar属性 (4)WordWrap属性 (5)Alignment属性 (6)AutoDisplay属性,7.6.7 TDBImage控件,1TDBImage控件的主要属性: (1)AutoDisplay属性 (2)ReadOnly属性 (3)Stretch属性,2TDBImage控件的应用举例 下面举一个使用TDBImage控件和TDBMemo控件的例子。程序的主窗体界面如图7-53所示。其中主要控件的属性设置如表7-12所示。,图7-53 程序的设计界面,表7-12 窗体中各控件的属性设置,7.6.8 TDBListBox控件,1TDBListBox控件的主要属性 (1)IntegralHeight属性 (2)Items属性 (3)Style属性 (4)ItemHeight属性,2TDBListBox控件的应用举例 举一个使用TDBListBox控件的例子。列表框的选项在设计时用String List Editor来进行编辑。程序的主窗体的设计界面如图7-56所示。其中主要控件的属性设置如表7-13所示。程序的运行界面如图7-57所示。,图7-56 使用TDBListBox控件的窗体设计界面,表7-13 属性设置,图7-57 程序运行界面,7.6.9 TDBComboBox控件,1TDBComboBox控件的主要属性 (1)Items属性 (2)Style属性 (3)DropDownCount属性 (4)ItemHeight属性 (5)Sorted属性,图7-58 TDBComboBox控件,2TDBComboBox控件的应用举例,图7-59 使用TDBComboBox控件的程序运行界面,7.6.10 TDBLookupListBox控件,表7-14 各控件属性设置,图7-60 使用TDBLookuplistbox控件的程序运行界面,7.6.11 TDBLookupComboBox控件,TDBLookupComboBox控件外观与TDBComboBox控件相同,但显示在组合框中的数据也来自于查询数据表。TDBLookupComboBox控件有关查询条件的设置与TDBLookup-ListBox控件相同。,7.6.12 TDBCheckBox控件,TDBCheckBox控件是把字段的值与预设的两个字符串比较,分别由ValueChecked属性和ValueUnChecked属性指定。如果字段的值与ValueChecked属性指定的字符串相匹配,则选中复选框。如果字段的值与ValueUnChecked属性指定的字符串相匹配,则不选中复选框。但这两个属性中的内容对逻辑字段本身是不起任何作用的。,7.6.13 TDBRadioGroup控件,表7-15 各控件属性设置,图7-61 使用TDBRadioGroup控件的程序运行界面,7.6.14 其他控件,1TDBCtrlGrid控件(如表7-16、图7-62所示) 2TDBRichEdit控件 3TDBChart控件,表7-16 各控件属性设置,图7-62 使用TDBCtrlGrid控件的程序运行界面,返回本节,7.7 报表控件,7.7.1 报表控件简介 7.7.2 制作报表实例 7.7.3 快速创建报表,7.7.1 报表控件简介,QReport控件是一组用于为Delphi数据库应用程序制作报表的控件,在它的控件板中,一共有23个控件,位于控件栏的QReport控件选项卡中,如图7-78所示。,图7-78 QReport控件板,1、TQuickRep控件的主要属性方法有:,2TQRBand控件 TQuickRep控件的主要属性有: (1)BandType属性 (2)ForceNewPage属性 (3)BeforePrint属性,3TQRSubDetail控件 TQRSubDetail控件的主要属性有: (1)DataSet属性 (2)Master属性 (3)Bands属性,4其他QReport控件 (1)TQRChildBand控件:一般用于在其中显示备注信息。 (2)TQRLabel控件:用于在报表中显示静态的文本。 (3)TQRDBText控件:用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论