数据库应用程序开发

上传人:飞*** 文档编号:53824972 上传时间:2018-09-05 格式:PPT 页数:198 大小:1.55MB
返回 下载 相关 举报
数据库应用程序开发_第1页
第1页 / 共198页
数据库应用程序开发_第2页
第2页 / 共198页
数据库应用程序开发_第3页
第3页 / 共198页
数据库应用程序开发_第4页
第4页 / 共198页
数据库应用程序开发_第5页
第5页 / 共198页
点击查看更多>>
资源描述

《数据库应用程序开发》由会员分享,可在线阅读,更多相关《数据库应用程序开发(198页珍藏版)》请在金锄头文库上搜索。

1、第5章 数据库应用程序开发,5.1 BCB数据库技术概论 5.2 数据库组件的连接 5.3 TDataSet类 5.4 数据控制组件的使用 5.5 TQuery组件的使用 5.6 建立主表/细目表关系 5.7 使用ADO技术 5.8 使用QuickReport创建报表 习题,5.1 BCB数据库技术概论,5.1.1 ODBC、BDE与ADOODBC是Microsoft公司Windows开放式体系结构的数据库部件,它是若干Windows API的标准命令或函数组,用户以统一的方式使用这些API来处理不同平台上的数据库信息。ODBC已成为数据库行业的标准,每个数据库管理系统的开发商都为自己的数据库

2、产品编制了相应的ODBC,为数据库的二次开发带来了方便。,为了对包括Office文档、邮件、Web上的文本或图形等形式的数据提供统一的访问方法,Microsoft对ODBC进行扩充,推出了新的数据访问接口标准OLE DB。但ODBC和OLE DB使用起来都不太方便,因此Microsoft随后又对OLE DB进行了包装,推出了一种面向对象且与语言无关的数据库应用编程接口,这就是ADO(ActiveX Data Objects)。,BCB支持从ODBC到ADO的各种流行的数据库标准。Borland数据库引擎称为BDE,它是访问各种数据库的DLL和实用程序的集合,用来访问符合ODBC标准的本地数据库

3、和客户/服务器数据库。针对不同的数据库,BDE提供了一组驱动器,使应用程序能够在不知道数据库的具体工作细节情况下即可进行各种数据操作。不同版本的C+Builder所带的驱动器有所不同,但每个版本都有一个名为STANDARD的驱动器,提供本地数据库所要的一切。而Client/Server版的C+Builder带有连接Sybase、Oracle、Informix、InterBase等数据库服务器的驱动器。,BCB对ADO的支持则是通过一组VCL的数据库组件来实现的。经过BCB包装的ADO组件,在使用中与BDE以及其它的VCL组件有很好的兼容性,使得用BCB开发的数据库程序具有极强的适应能力。,5.

4、1.2 数据库别名BDE可以直接访问数据库,也可以通过别名访问数据库,前者较为直接,后者则较为正规,并且具有更多的功能和更好的兼容性。数据库别名生成后就可以在C+Builder中使用。本地数据库使用的别名通常比较简单,它告诉BDE使用哪种驱动器和数据库文件在磁盘上的位置。而客户/服务器数据库的别名则还包含其它信息,如打开方式、用户名和密码等。,BCB安装完成后,本地硬盘上已经设置了一个别名为“BCDEMOS”的数据库,该数据库内有许多表,我们经常在例题中使用该数据库别名。下面介绍如何生成BDE的数据库别名。在Windows系统的控制面板中选取“BDE Administrator”图标,此时弹出

5、BDE别名管理器,如图5-1所示。该窗口左下方Database页上列出了系统所有的可用数据库的别名,打开其中的树型结点可以浏览更加详细的内容。,图5-1 BDE 管理器,作为例子我们创建一个基于FOXPRO的BDE别名MYBDE,具体方法如下:(1) 在别名管理器的Database 页面上选择主菜单ObjectNew,或右击树型结构的任意地方,选择弹出菜单的New选项,弹出新别名对话框,如图5-2所示。在下拉列表框中选择“STANDARD”,此时生成一个缺省名为“STANDARD1”的别名。,图5-2 新建数据库别名,(2) 将别名命名为“MYBDE”并回车,然后在该别名的设置中单击DEFAU

6、LT DRIVER的属性值,选取FOXPRO。(3) 将别名的PATH设置为数据库所在的目录,如路径为C:Program FilesBorlandBorland SharedData(4) 单击工具栏中的Apply按钮,即完成了别名的创建。如果需要浏览数据库别名所指的数据库及其数据表,则单击别名前面的“+”,展开后再打开Tables节点,将出现该数据库所有可用的表,如图5-3所示。,图5-3 展开后的数据库浏览器,5.1.3 Database DeskTopDatabase DeskTop是Borland公司的一个小型数据库管理系统产品。C+Builder中可以使用Database DeskT

7、op来创建、浏览和修改本地的Paradox和dBASE数据表。执行ToolsDatabase DeskTop 菜单命令即可打开Database DeskTop。在Database DeskTop中可以打开子窗口对数据表进行创建、查询、执行SQL语句等操作。Database DeskTop子窗口主要有以下三种。,1查询窗口打开或建立新的QBE文件时,Database DeskTop将打开一个查询窗口,可以使用查询窗口检索表中的信息。2SQL编辑器当打开或创建SQL文件时,SQL编辑器窗口就会自动出现在主窗口上面。SQL编辑器除了具有文本编辑器的一般特征以外,还具有执行和保存SQL语句的功能。在执

8、行时,由SQL服务器进行文法检查。,3表窗口当打开或建立新的Paradox、dBASE、SQL表时,会出现表窗口,利用表窗口可以输入或修改表的结构。Database DeskTop支持Paradox、dBASE和SQL文件格式,在Database DeskTop中建立一个表的步骤如下:(1) 选择FileNewTable,或右击“Open Table”工具按钮选择“New”, Database Desktop将打开“Create Table”对话框,从下拉式列表框中选择“Paradox”(如果建立其它类型的数据表,也只要在这里作相应选择即可)。单击“OK”, Database DeskTop将

9、打开创建数据表对话框。,(2) 在“Field Name”列输入字段名。移动光标到“Type”列,按下“空格”键或用鼠标右击“Type”列,从显示的数据类型列表中选择该字段的数据类型。在“Size”列键入一个合适的字段宽度(如果需要的话)。(3) 使用向下箭头,重复如上步骤,直到指定所需的所有字段。(4) 可以双击某字段的“Key”列将该字段指定为一个键。Paradox表可以有一个或几个键,但必须是该表最前面的几个字段。被指定为Key的字段会被自动索引,并且系统会检查键值组合的惟一性(即不允许两条记录的所有键值都相同)。,(5) 表结构创建完成之后,选择“Save As”命令按钮为该表命名并保

10、存。在Database DeskTop的表窗口中设计表的结构如图5-4所示。在Database DeskTop中可对数据表进行输入或编辑,具体步骤如下:执行FileOpen菜单命令打开数据表,执行TableEdit Data菜单命令进入编辑模式,在该模式下可输入或编辑数据。在编辑完一条记录并进入下一条记录的编辑后,Database DeskTop将自动保存刚才输入或编辑的记录。如果要修改表的结构,则应在打开表窗口之后执行TableRestructure菜单命令。,图5-4 使用Database DeskTop设计表的结构,5.1.4 BCB 的数据库组件BCB数据库组件分为两大类:非可视的数据

11、访问组件和可视化的数据控制组件。前者提供了取得数据的机制,它们位于组件面板的Data Access、BDE和ADO等页上;而后者主要用于浏览和编辑数据,它们位于Data Controls页上。,5.2 数据库组件的连接,VCL的数据访问组件和数据控制控件之间通常使用DataSource来连接。下面这个简单的例子让我们对BCB使用组件连接数据库的技术有感性的认识。【例5-1】 本例使用数据库组件连接位于本地的BCDEMOS数据库中的animals数据表进行浏览。具体制作步骤如下:,(1) 新建一个项目,在主窗体上放一个TTable类组件Table1(位于BDE组件页)。将它的DatabaseNa

12、me属性设置为BCDEMOS,它的TableName属性设置为animals.dbf。(2) 在窗体上放置一个TDataSource类组件Database1(位于Data Access页),并在其属性Dataset的下拉框中选取Table1,实现数据源和数据集相联系。(3) 将一个TDBGrid类控件(位于Data Controls页)放到窗体上,将其DataSource属性设置为DataSource1,使其与数据源相联系。,(4) 回到Table1组件上,将其Active属性设置为true(缺省值为false),这样就打开了数据源,此时ANIMALS.DBF表中的数据立即显示在DBGrid1

13、的栅格中(除BMP字段外)。可调整DBGrid控件的大小以便于浏览。(5) 再将一个TDBImage类控件(位于Data Controls页)放置在窗体上,将其DataSource属性设置为DataSource1,DataField属性设置为BMP(animals表中的字段名,数据类型为图片),并调整该控件的尺寸和位置。,(6) 将一个TDBNavigator类控件(位于Data Controls页)放置在窗体上,将其DataSource属性设置为DataSource1。至此,程序设计完毕。运行该程序,通过DBNavigator按钮可以实现添加和删除记录等功能,在DBImage中显示图片,如图

14、5-5所示。,图5-5 简单的数据表浏览程序,5.3 TDataSet类,TTable组件用于方便快捷地访问本地数据表,而处理SQL数据库服务器则通常使用TQuery组件,它们都是TDataSet的派生类。本节将对TDataSet类属性和方法的用法作一个较为详细的介绍,它们是BCB数据库技术的重要基础。,5.3.1 连接数据库与连接数据集有关的属性和方法主要有下面两点。1DatabaseName属性DatabaseName属性用来指定当前使用的数据库。在程序的设计阶段,可在Object Inspector中进行设置,通常只要在如图5-6所示的组合框中选择一个已定义的数据库别名即可。此外,Dat

15、abaseName 也可以在程序运行时动态设置。如果没有设置过数据库别名,那么也可以对DatabaseName属性输入数据表文件所在目录的路径。例如,当数据表文件与应用程序项目在同一目录下时,只要对DatabaseName属性输入“.”即可。,图5-6 选择数据库,2TableName属性TableName属性用来指定数据表的名称,在设置TableName的属性值之前,应该首先设置DatabaseName属性的值。如果DatabaseName属性的值是在设计阶段指定的,则可通过选择下拉列表框中有效表名来指定TableName。,5.3.2 打开和关闭数据表打开和关闭数据表的有关属性和方法主要有

16、下面三点。1Active属性如果Active属性为true,相当于调用Open方法打开数据集,使数据集处于Browse状态。如果设置为false,相当于调用Close方法关闭数据集。在程序的运行阶段,在设置DatabaseName 的值之前,必须首先将Active属性的值设置为false,然后可设置DatabaseName的值,最后再打开该数据集。,2Open方法Open方法用于打开数据集,使它处于Browse状态,相当于把Active属性设置为true。3Close方法Close方法用于关闭数据集,使它处于非活动状态,相当于把Active属性设置为false。,5.3.3 浏览记录浏览记录的有关属性和方法主要有下面七点。1Bof属性Bof属性为只读。如果当前记录是数据集中的第一条记录,Bof属性返回true,否则返回false。当程序刚打开一个非空的数据集或调用了First过程时,Bof为true。2Eof属性Eof属性为只读。如果当前记录是数据集中的最后一条记录,Eof属性返回true,否则返回false。当程序打开一个空的数据集或调用了Last过程时,Eof为true。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号