数据控制部件页上的部件,主要用于设计用户界面,对数据库中的数据进行浏览、编辑、插入、删除等操作。因而数据控制部件常常又被称为数据浏览部件,数据控制部件其实是在Standard页上的标准部件的基础上,相应地增加了数据浏览功能,使得它们能够显示和编辑数据库中数据信息。 

数据控制部件既能够把数据库中的数据显示到窗体中,又可以将其自身的经过修改的数据写回到数据库中。下表列出了数据控制页上的数据控制部件及它们的主要用途。 

表13.5 数据控制部件

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

部件名称   主 要 用 途

───────────────────────────────

 使用该部件可以向前向后移动记录指针,可以使

TDBNavigator  用该部件对单条记录进行编辑,还可以用它来插

 入、删除记录以及刷新显示和取消前一次的操作

───────────────────────────────

 它是显示数据库中的数据的文本框,它只能显示

TDBText  数据库表当前记录的字段值,用户不能对其中的

 数据进行修改。

───────────────────────────────

 它是显示和编辑数据库表中的数据的编辑框,它

TDBEdit  既可以显示又可以编辑数据库表中当前记录的字

 段值。

───────────────────────────────

TDBCheckBox  它是浏览数据库中的数据的检查框,它可以用来

 显示和编辑数据库中的布尔型字段的字段值。

───────────────────────────────

TDBListBox  它是浏览数据库中的数据的列表框,它可以用一

 个列表框来显示数据库表中一个字段的值。

───────────────────────────────

TDBComboBox  它是浏览数据库中的数据的组合框,它可以用一

 个组合框来显示数据库表中一个字段的值。

───────────────────────────────

TDBRadioGroup  它是浏览数据库表中的数据的单选钮,用一组单

 选钮可以确定显示数据库表中哪一个字段。

───────────────────────────────

TDBGrid  它是浏览数据库中的数据的网格,以网格的方式

 显示数据库中的数据,在网格中还可以对数据库

 中的数据进行编辑。利用Fields Editor可以对

 数据库表中字段的显示格式、显示顺序、是否显

 示等进行控制。

───────────────────────────────

TDBMemo  它主要用于浏览数据库中备注型的字段,它可以

 用来显示数据库表中当前记录中的BLOB型字段。

───────────────────────────────

TDBImage  它是浏览数据库中的数据的图像框,它可以用于

 显示、拷贝、粘贴据库表中图像类型的字段。

───────────────────────────────

TDBLookUpList  它是浏览数据库表中的数据的列表框,在基于一

 个数据库表的应用中,用它可以显示另一个数据

 库表中一个指定的字段值。

───────────────────────────────

TDBLookUpCombo 它是浏览数据库表中的数据的组合框,在基于一

 个数据库表的应用中,用它可以显示另一个数据

 库表中一个指定的字段值。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

数据控制部件为开发Delphi数据库应用程序提供可视化的用户界面,不管应用程序是访问本地数据库中的数据文件,还是访问远程数据库服务器中的数据文件,用户界面都是一致的,即数据库的物理位置对数据控制部件是透明的。

13.3.3 数据库窗体专家和数据库操作台(DBD) 

Delphi为用户开发简单的数据库应用程序提供了一个开发工具叫做“数据库窗体专家”(DatabaseForm Expert),在Delphi系统菜单Tool菜单下可以找到。

数据库窗体专家能够自动生成简单的数据库应用程序中所必须完成的许多任务,它还可以生成基于单个数据库表的应用程序窗体或基于主要──明细型多个数据库表的应用程序窗体,数据库窗体专家能够自动完成的任务如下:

● 放置数据库部件到窗体中(TDataSource部件)

● 为数据集部件(TTable、TQuery)和磁盘上的数据库建立连接

● 建立数据源(TDataSource)与数据控制部件的连接,数据源(TDataSource)与 数据访问部件(TTable、TQuery)的连接

● 为TQuery部件编写SQL语句

● 为窗体中的部件定义Tab顺序

数据库操作台(DBD)是数据库维护和数据定义工具,程序设计人员利用它可以查询、连接、建立、重构、索引、修改和拷贝数据库表,包括Pà€aradox和dBASE文件和基于SQL语言的数据库表。而且在使用DBD操作Paradox或dBASE的表时,用户不必拥有Paradox 或dBASE数据库管理系统。DBD还可以把一种格式的数据和数据字典拷贝成另一种格式,例如,你可以将一个dBASE的表拷贝到远程的SQL服务器上的一个数据库中去。有关DBD详细描述,请参看“数据库操作台(DBD)的使用”。 

13.4 Delphi数据库应用程序的开发方法和步骤 

13.4.1 概述 

用Derphi用开数据库应用程序,虽然与开发其他应用程序有相似之处,但是也有一些重要的区别,我们必须要加以注意。

利用Delphi的客户/服务器功能,程序设计者可以在本地数据库上或远程数据库服务器上开发客户/服务器模式的应用程序。Delphi的一个强有力的功能之一是可以将基于本地桌面数据库系统的应用程序很容易地修改成客户/服务器模式的应用。一个Delphi数据库应用程序访问的是本地数据库还是远程SQL数据库服务器上的数据库,这对于最终用户是完全透明的。即数据库的物理位置对最终用户是透明的,当数据库的物理位置发生变化时,用户界面不必随之变化。

因为数据库应用程序的是依赖于它所访问的数据库的,所以在开发数据库应用程序之前必须要建立一个完善的数据库即数据定义,数据定义应当是开发数据库应用程序的一部分,但它超出了书本的范围,有关数据定义的内容,请参看关系数据库设计方面的资料。在我们用Derphi开发一个数据库应用程序时,可能有下列四种情况。

1、数据库不存在或者必须要重新定义。使用DBD为本地数据库定义Paradox或dBASE数据库表。使用Delphi提供的服务器开发工具如Windows ISQL或DBD定义本地或远程SQL数据库务器上的数据库。

2、数据库在桌面数据库系统中或局域网上(如Paradox或dBASE),而且BDE、数据库和应用程序在同一台机器上,这是典型的独立应用。

3、数据库在桌面数据库系统中,但是用户要把它改变到SQL数据库服务器中去,这种情况我们在附录C中详细讨论。

4、数据库在SQL数据库服务器中,而且应用程序将到SQL数据库服务器中去访问数据库,这是一个标准的客户/服务器应用。

有关开发客户/服务器应用程序的详细内容,参看“客户/服务器应用”一章。

13.4.2 数据库应用程序的开发步骤 

数据库应用程序的最终目标就是为用户提供一个满足其长期需要的软件产品,因此,成功地开发一个数据库应用程序的关键之一是要详细地定义用户的需求,然后再围绕用户的需求进行开发,数据库应用程序的一般开发的三个基本步骤如下。

● 系统设计

● 系统实现

● 系统运行和维护

在这个三个基本步骤中,都包含着数据库的开发和应用程序界面的开发两大类任务,对于一个客户/服务器模式的应用,数据库和应用界面的区别就更明显一些,因为它们运行在不同的平台之上,而且使用的操作系统都常常不一样,如(一个Unix环境的服务器和Windows环境的客户机)。

1、系统设计

系统设计阶段应当根据用户的需求,明确地描述数据库(数据库服务器端)和应用界面(客户机端)实现的功能,即决定哪些功能由服务器端实现,哪些功能由客户机端实现,对于客户/服务器应用程序,许多功能既可以在服务器端实现又可以在客户端实现的,例如一个复杂的数学变换功能既可以由客户端的应用程序实现,也可以由服务器端的存贮过程实现。服务器和客户端应用程序功能的划分往往取决于应用程序运行的硬件环境,例如:如果客户端是低档的PC机,服务器端是高档的工作站,那么大量的计算由服务器完成是比较理想的。

2、系统实现

系统实现阶段的主要任务是使用Delphi提供的工具和部件以及Pascal语言实现系统设计阶段的设想,并进行调试。

在系统实现阶段,最好使用数据库的一个备份数据库,这个备份的数据库与原数据库具有相同的结构,但其中的数据库只是原数据库中的一部分,至所以不在原数据库上开发应用程序,是因为考虑到没有调试好的应用程序可能会破坏数据库中的数据或者妨碍数据库的正常操作。

如果应用程序是基于远程SQL数据库服务器的,在系统实现阶段可以采用两种方法:

● 在本地InterBase服务器上,使用数据库的备份数据库进行开发和调试

● 在远程服务器上,使用数据库的备份数据库进行开发和调试 

第一种方法优越性在于,它是独立于服务器的,而不至于影响服务器的其它的操作,而且不消耗服务器的资源不增加网络的负担。它的不利的方面是开发出来的应用程序只能在标准的SQL服务器上使用和调试。第二种方法能够使程序设计人员直接感受到服务器的特性,但它在调试阶段要消耗网络和服务器的资源,这种方法具有一定的危险性,程序中的错误可能会导致服务器的瘫痪。

3、系统运行和维护

一个应用系统性能的优劣,效率的高低始终应当由用户来做出判决,应用程序在运行过程中,用户会提出一些新的需求和建议,根据用户需求的变化,应当对应用程序做一定的修改,使其进一步地得到完善和提高。 

13.4.3 交付数据库应用程序 

交付数据库应用程序意味着将它交付给最终用户,并且提供应用程序运行所需的软件,非数据库应用程序往往只需要一个EXE文件,而数据库应用程序要包括下列几类文件:

● 数据库应用程序生成的EXE文件和DLL文件(如果有的话)

● 必要的辅助文件(如Readme文件或HLP联机帮助文件)

● 支持访问数据库的BDE,有时也称为IDAPI

● 用于打印输出报表的ReportSmith报表工具

● 如果应用中使用了VBX控件,还要包括VBX和BIVBXII.DLL

13.3.4 安装BDE

在交付数据库应用程序时,必须同时在运行应用程序的机器上安装BDE,Delphi本身包含可再安装的BDE,在准备数据库应用程序安装盘时,同时从Delphi中复制一份BDE到最终用户的机器中,BDE中包含访问多种数据库系统的驱动程序,为了节省磁盘空间,在安装BDE时,可以只安装应用程序必须的驱动程序,例如,如果我们的应用程序只需要访问dBASE数据库文件,那么在安装BDE时,只需安装dBASE的驱动程序就行了。要访问Paradox数据库,BDE至少需要500KB的磁盘空间。BDE主要包括下列文件,请参看DEPLOY.TXT文件。 

表13.5 BDE中主要包括的文件

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

文 件 名   说 明

──────────────────────────────────

IDAPI01.DLL  BDE应用程序接口动态连接库

IDBAT01.DLL  BDE Batch应用动态连接库

IDQRY01.DLL  BDE查询动态连接库

IDASCI01.DLL  BDE ASCII码驱动程序

IDPDX01.DLL  BDE Paradox数据库驱动程序

IDDBAS01.DLL  BDE dBASE数据库驱动程序

IDR10009.DLL  BDE 资源库

at.yoka.com/url_5393203aaebc5ee32f000000.html
 at.yoka.com/url_5393203baebc5e232b00000a.html
 at.yoka.com/url_53932040aebc5ecb2b000012.html
 at.yoka.com/url_53932042aebc5e9a2b00000e.html
 at.yoka.com/url_5393203caebc5edc2f000002.html
 at.yoka.com/url_53932043aebc5e4c1d000062.html
 at.yoka.com/url_53932045aebc5e642e000006.html
 at.yoka.com/url_53932044aebc5e1030000004.html
 at.yoka.com/url_53932048aebc5e632e000008.html
 at.yoka.com/url_53932048aebc5e0e2b000010.html
 at.yoka.com/url_53932050aebc5e092d00000e.html
 at.yoka.com/url_53932050aebc5e4c2b000010.html
 at.yoka.com/url_53932058aebc5e0731000000.html
 at.yoka.com/url_53932058aebc5ee02f000004.html
 at.yoka.com/url_53932058aebc5edc2b00000e.html
 at.yoka.com/url_5393205baebc5e352b000010.html
 at.yoka.com/url_5393205caebc5ed41e00005e.html
 at.yoka.com/url_53932055aebc5e0231000000.html
 at.yoka.com/url_5393205daebc5ef716000074.html
 at.yoka.com/url_5393205faebc5e822b00000e.html
 at.yoka.com/url_53932065aebc5ee330000001.html
 at.yoka.com/url_53932066aebc5e8f2d000008.html
 at.yoka.com/url_5393206caebc5e192d000008.html
 at.yoka.com/url_5393206eaebc5e532200005c.html
 at.yoka.com/url_53932071aebc5e392b000012.html
 at.yoka.com/url_53932073aebc5ed830000000.html
 at.yoka.com/url_53932073aebc5eff30000000.html
 at.yoka.com/url_53932070aebc5e0931000004.html
 at.yoka.com/url_53932074aebc5e0631000002.html
 at.yoka.com/url_5393207baebc5e812b000010.html
 at.yoka.com/url_5393207baebc5e842b00000e.html
 at.yoka.com/url_53932081aebc5e992b000012.html
 at.yoka.com/url_53932083aebc5ef430000002.html
 at.yoka.com/url_53932086aebc5edb2b000011.html
 at.yoka.com/url_53932088aebc5eda2b000010.html
 at.yoka.com/url_53932088aebc5ee430000006.html
 at.yoka.com/url_53932089aebc5ef030000002.html
 at.yoka.com/url_5393208aaebc5ee82a000010.html
 at.yoka.com/url_53932090aebc5ea431000002.html
 at.yoka.com/url_53932090aebc5e0e31000006.html
 at.yoka.com/url_53932090aebc5e812b000012.html
 at.yoka.com/url_53932098aebc5e8f2d00000a.html
 at.yoka.com/url_5393209caebc5e9032000000.html
 at.yoka.com/url_5393209daebc5e1230000008.html
 at.yoka.com/url_5393209daebc5e2d2b00000e.html
 at.yoka.com/url_5393209faebc5ea132000000.html
 at.yoka.com/url_539320a6aebc5e842b000012.html

ILD01.DLL  语言驱动程序

IDODBC01.DLL  BDE的ODBC驱动程序

ODBC.NEW  Microsoft ODBC驱动程序管理器(Version2.0)

ODBCINST.NEW  Microsoft ODBC驱动程序安装程序(Version2.0)

TUTILITY.DLL  BDE应用工具库

BDECFG.EXE  BDE配置工具

BDECFG.HLP  BDE配置工具帮助文件

IDAPI.CFG  BDE(IDAPI)配置文件

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 

安装BDE可以采用与安装Delphi相同的方法,在Windows环境中运行Delphi的安装程序setup.EXE,此时,Delphi显示DelphiInstallation对话框

为我们只须安装BDE,所以只要选择BorlandDatabase Engine检查框,如果应用程序要处理SQL数据库服务器上的数据,还必须要选择SQLLinks 检查框, 以便安装 SQL Links。单击Continue按纽,完成BDE的安装。

如果没有Delphi安装盘,我们也可以手工安装BDE, 从现有机器上的 BDE 目录(或IDAPI目录)中拷贝所有的文件到用户机器上的BDE目录中,并在用户的Win.INI文件的结尾处增加下列语句: 

[IDAPI]

DLLPATH=C:/DELPHI/IDAPI

CONFIGFILE01=C:\DELPHI\IDAPI.CFG 

然后在Windows的Program Manager中为IDAPICFG.EXE起动图标。  

语言驱动程序的安装

BDE可以为应用程序提供不同的语言支持,语言驱动程序可以在配置Paradox,dBASE数据库时装入,对于服务器上的数据库可以在IDAPI.CFG文件中说明相应的语言驱动程序,语言驱动程序在C:\DELPHI\IDAPI\LANGDRV子目录下(驱动器名与Delphi安装的磁盘有关),是带有扩展名为.LD的文件。如果正确安装了语言驱动程序,在Windows的WIN.INI文件中包含下列内容(缺省情况下): 

[Borland Language Drivers]

LDpath=C:/dELPHI\IDAPI\LANGDRV 

13.4.5 安装SQL Link 

安装SQL链接与安装BDE执行相同的步骤,在图13.7中只选择SQL Link检查框,然后执行安装,选择应用程序要访问的SQL数据库服务器,当选择安装SQLLink时, 安装程序会自动地安装BDE。根据用户选择的SQL数据库服务器,安装程序会自动地提示相关的特定信息,例如Informix数据库系统的链路(SQLLink)需要一个放置消息文件的地方。用户选择的每个SQL Link都使用一个或多个附加的动态链接库(DLL文件),这些文件将要拷贝到BDE目录中,下面是建立SQLLink时常见的SQL数据库系统所需的DLL文件。 

1.ORACLE数据库

在建立ORACLE的SQL Link时除了需要下列文件外,应用程序还需要ORACLE数据库管理系统的客户端的连接产品与网络协议接口。 

表13.6 建立ORACLE数据库的SQL Link所需的文件

━━━━━━━━━━━━━━━━━━━━━━━━━━━

文件名   描 述

───────────────────────────

SQLD_ORA.DLL   Borland SQL Link for ORACLE驱动程序

SQLD_ORA.HLP   联机帮助文件

SQL_ORA.CNF   ORACLE驱动的BDE配置文件

ORA6Win.DLL   ORACLE 6.x版客户端的DLL文件

ORA7Win.DLL   ORACLE 7.x版客户端的DLL文件

SQL13Win.DLL   ORACLE 客户端的DLL文件

SQLWin.DLL   ORACLE 客户端的DLL文件

COREWin.DLL   ORACLE 客户端的DLL文件

ORAWE850.Ld   ORACLE 的语言驱动程序

━━━━━━━━━━━━━━━━━━━━━━━━━━━ 

2. Sybase和MicroSoft SQL Server数据库

在建立Sybase或MicroSorft SQL Server的SQL Link时除了需要下列文件外,应用程序还需要Sybase数据库管理系统的客户端的连接产品与网络协议接口。 

表13.7 建立Sybase数据库的SQL Link所需的文件

━━━━━━━━━━━━━━━━━━━━━━━━━━━

文件名  描 述

───────────────────────────

SQLD_SS.DLL  BDE SQL Link for Sybase的驱动程序

SQLD_SS.HLP  联机帮助文件

SQL_SS.CNF  Sybase驱动程序的BDE配置文件

W3DBLIB.DLL  Sybase/MC SQL Server客户端的DLL文件

DBNMP3.DLL  Sybase/MC SQL Server客户端的DLL文件

SYDC437.LD  Sybase语言驱动程序

SYDC850.LD  Sybase语言驱动程序

━━━━━━━━━━━━━━━━━━━━━━━━━━━ 

3. Informix数据库

在建立Informix的SQL Link时除了需要下列文件外,应用程序还需要Informix数据库管理系统的客户端的连接产品与网络协议接口。 

表13.8 建立Informix 数据库的SQL Link所需的文件

━━━━━━━━━━━━━━━━━━━━━━━━━━━

文件名   描 述

───────────────────────────

SQLD_ss.DLL  BDE SQL Link for Informix的驱动程序

SQLD_INF.HLP  联机帮助文件

SQL_INF.CNF  Informix驱动程序的BDE配置文件

第十三章 Delphi开发数据库应用程序概述(二)相关推荐

  1. 在VC中使用ADO开发数据库应用程序

    在VC中使用ADO开发数据库应用程序 一.ADO概述 ADO是Microsoft为最新和最强大的数据访问范例 OLE DB 而设计的,是一个便于使用的应用程序层接口.ADO 使您能够编写应用程序以通过 ...

  2. 第一章 软件开发入门引导及概述

    第一章 软件开发入门引导及概述 前言 计算机系统是由硬件和软件组成,所谓硬件是指组成计算机系统的物理设备,包括电子的.机械的.磁的.光的设备的总和. 我们的电脑.手机.电子设备都算一个小的计算机. 而 ...

  3. 用Delphi开发的名程序有哪些

    我所知道DELPHI开发的程序,有少部份可能是BCB开发的,反正都是VCL: 比特精灵 金山毒霸 酷狗 SKYPE 速达ERP/有人说是BCB开发的 天心ERP 鼎新ERP WORKFLOW 神州数码 ...

  4. WordPress 网站开发“微信小程序“实战(二)

    原文链接:https://devework.com/wordpres...,转载请用明链注明来源,谢谢! 本文是"WordPress 开发微信小程序"系列的第二篇,本文记录的是开发 ...

  5. ACCP学习旅程之-----使用C#开发数据库应用程序(第二章)

    基本循环语句while.do-while.for循环与Java完全一样        引入的一种新的循环----foreach 1¥ foreach循环 语法: foreach(类型 元素(局部变量) ...

  6. 第十三章:Sqlserver2019数据库之Transact-SQL 语法基础及常用 SQL 函数总结

    目录 一.Transact-SQL 语法基础 1.1 常量 1.2 变量 1.3 注释符.运算符与通配符 1.4 流程控制 二.SQL 函数 学前必备知识 第一章:SQL Server 数据库环境搭建 ...

  7. 用VC++开发数据库应用程序(二)

    2.2 应用ODBC API建立应用程序 虽然直接应用ODBC API编制应用程序相对来说较为繁琐,但是,由于直接使用ODBC API编写的程序相对要简洁.高效.所以,我们有必要学习直接使用ODBC ...

  8. 通过修改Delphi 的 RTL,加快Delphi开发的应用程序速度和稳定性

    RT 具体见PDF 看了不后悔,只给高手准备的. 神呐,偶看看是虾米东东 转载于:https://www.cnblogs.com/stevenlaz/p/3437533.html

  9. mpvue,koa开发微信小程序(二)网络请求相关

    腾讯云(后台) 进入微信公众平台|小程序 - 设置 - 开发者工具 - 腾讯云扫码开通 - 后台管理 下载Node.js Domo - copy sever文件 - 直接粘贴在项目my-pro目录中 ...

最新文章

  1. HLS中m3u8格式规范解读
  2. 【FPGA】FPGA中的缓冲与驱动那些事
  3. 读书狂想之《穷爸爸,富爸爸》财富观
  4. 功能奇数次执行和偶数次执行时的结果不同的故障复盘
  5. java动态创建bean的意义_java相关:Spring Boot如何动态创建Bean示例代码
  6. UVa 10375 - Choose and divide(唯一分解定理)
  7. 牛人学习h264运动估计的方法
  8. javascript无限请求_JAVASCRIPT事件循环
  9. 单片机代码怎么读懂_单片机要这么学?八条谨记!
  10. python基础===字符串的制表,换行基础操作
  11. java连接oracle jdbc连接
  12. 推荐系统实践学习笔记(一)
  13. Spring AOP动态代理的两种实现方式
  14. 微信小程序video标签大小设置
  15. windows“你尚未连接代理服务器可能有问题”解决方法
  16. 量化交易入门阶段——净资产收益率的变动值也迷人
  17. java 自动填充,使用java自动填充,实现mysql的创建修改时间的自动填充
  18. DTL语言学习(一)模板变量和{% if %}标签的使用
  19. java禅道_使用Java+Excel统计禅道上问题处理情况
  20. WiFi穿墙完全指南

热门文章

  1. office@word@ppt启用mathtype组件方法整理
  2. H5页面屏蔽用户长按复制黏贴
  3. python计算两个坐标点之间的距离
  4. 中央机关及其直属机构2007年考试录用公务员公告
  5. ls -la /usr/home/guest/ | more
  6. python无法启动此程序丢失zlib.dll_关于winserver2012运行c++程序缺少dll的理由
  7. 2021计算机三级网络技术教程,全国计算机等级考试三级教程——网络技术(2021年版)...
  8. .Net Core下繁简转换的实现
  9. 在应用中嵌入Python - lf8289的专栏 - CSDNBlog
  10. B75对应的服务器芯片组,技嘉GA-B75M-D3V的主板架构是什么