DELPHI基础教程:Delphi开发数据库应用程序概述(二)[2]

DELPHI基础教程:Delphi开发数据库应用程序概述(二)[2],第1张

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

Delphi为用户开发简单的数据库应用程序提供了一个开发工具叫做 数据库窗体专家 (Database Form 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)的使用

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

概述

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

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

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

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

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

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

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

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

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

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

● 系统设计

● 系统实现

● 系统运行和维护

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

系统设计

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

系统实现

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

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

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

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

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

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

系统运行和维护

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

交付数据库应用程序

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

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

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

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

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

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

安装BDE

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

lishixinzhi/Article/program/Delphi/201311/25177

以下是一些推荐的数据库教程:

SQL 教程:W3Schools 提供了一份免费的 SQL 教程,适合初学者学习 SQL。该教程涵盖了 SQL 的基础知识、查询、过滤、排序、分组和连接等内容。

SQLBolt:SQLBolt 是一份交互式 SQL 教程,它涵盖了 SQL 的基础语法、查询、过滤、排序、分组和连接等内容。通过这个教程,您可以快速上手 SQL 编程。

MongoDB 教程:MongoDB 官网提供了一份免费的 MongoDB 教程,适合初学者学习 MongoDB。该教程涵盖了 MongoDB 的基础知识、安装、配置、数据建模、查询、索引和聚合等内容。

MySQL 教程:MySQL Tutorial 是一份 MySQL 数据库的免费教程,适合初学者学习 MySQL。该教程涵盖了 MySQL 的基础知识、查询、过滤、排序、分组和连接等内容。

PostgreSQL 教程:PostgreSQL Tutorial 是一份 PostgreSQL 数据库的免费教程,适合初学者学习 PostgreSQL。该教程涵盖了 PostgreSQL 的基础知识、查询、过滤、排序、分组和连接等内容。

希望以上推荐能够对您有所帮助,祝您学习愉快!

Visual Query Builder 以可视化的方式建立SQL语句对数据库表和表中的记录进行 *** 作

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

SQL links使得Delphi数据库应用程序利用SQL语言访问驻留在远程服务器上的数据 这些服务器包括ORACLE Sybase Microsoft SQL Server Informix InterBase 当安装SQL Link驱动程序之后 SQL语句便可以直接 *** 作服务器上的数据

Delphi可以访问的数据源(DataSource)

Delphi数据库应用程序是通过BDE获取它们所需的数据的 BDE与不同类型的数据源打交道 BDE可以使用的数据源有如表 所示

表 Delphi可访问的数据源

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

数据源(DataSource)   特 性 描 述  文件扩展名

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

dBASE数据库  数据库表是通过dBASE数据库管理系统或DBD建立的 每个表是一个独立的文件  DBF

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

Paradox数据库  数据库表是通过Paradox数据库管理系统  DB或DBD建立的 每个表是一个独立的文件

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

ASCII文件  表是通过Database Desktop建立的 每个  TXT表是一个独立的文件

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

本地InterBase服务器  数据库是通过InterBase数据库管理系统  GDB建立的 多个表包含在一个数据库文件中

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

SQL数据库服务器   数据库是通过相应的数据库服务器提供的 依赖不同的ORACLE Sybase Informix 专用或通用工具建立的 也可以通过DBD来 数据库管理Microsoft SQL Server  创建数据库 并通过SQL Link访问数据库  系统InterBase

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

ODBC数据源  主要是指那些具有ODBC接口的数据库系统 依赖于相应如MS Access Btrieve等的数据库

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

Delphi数据库的体系结构

Delphi使用可视化的部件创建数据库应用 跟创建其它的非数据库应用程序一样 数据库部件都具备一定的属性 程序设计人员可以在设计过程中设置部件的多种属性 也可以在程序运行过程中通过程序来设置部件的各种属性

在Delphi部件板上有两页数据库部件用于开发数据库应用程序

数据访问部件页 该页上的部件主要用于说明有关的数据库的信息 如应用程序要访问(连接)的数据库 要访问数据库中的具体的数据库表 以及要访问表中哪些字段等 在实际的开发应用中常用的部件有TDataSource TTable TQuery等

数据控制部件页 该页上的部件主要用于显示浏览数据库中的数据信息 为用户提供了一个可视化的界面 常用的部件有 TDBGrid TDBEdit TDBCheck等 可以让用户对数据库中的信息进行有效的浏览 编辑 插入 删除等 *** 作

TTable TQuery TStoredproc部件负责与实际的数据库表联系 并从中获取数据信息 因而它们又常常被称为数据集部件 它们在程序设计过程中是可见的 但在程序运行时是不可见的 它们通过 BDE 为应用程序提供与数据库的连接 数据控制部件通过TDataSource部件与数据集部件相连 为用户提供一个可视化的界面 并在其中显示数据库中的数据信息

数据访问部件

数据访问部件页上提供了一组数据访问部件用来访问数据库中的数据

当要创建一个数据库应用时 首先在窗体中选择一个数据访问部件 然后为数据访问部件设置有关的属性 说明要访问的数据库 数据表以及表中的记录等 数据访问部件为数据控制部件与数据源建立一条通道 数据访问部件在程序运行时是不可见的 下表列出了数据访问页上的数据访问部件以及它们的主要用途

表 数据访问部件

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

部件名称   主 要 用 途

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

作为数据集部件TTable TQuery StoredProc组TDataSource 件与数据浏览件TDBGrid TDBEdit之间传送数据的通道

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

TTable  它是存取磁盘上数据库表的媒介 它通过BDE存取数据库表中的数据 TTable再与TDataSource进行 对话 使得数据浏览部件能够有效地从TTable中访问数据并能显示和编辑其中的数据

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

TQuery  它利用SQL语言访问磁盘上数据库表中的数据 并与TDataSource 对话 实现数据浏览部件对数据库的访问

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

TStoredProc 在应用程序中 它主要用来访问远程服务器中的存贮过程

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

TDatabase  当应用程序要登录到一个远程服务器上的数据库时 可以用该部件来建立应用程序与数据库永久

性的连接

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

TBatchMove 用于复制数据库表的结构或表中的记录

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

TReport  用于创建数据库的输出报表

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

lishixinzhi/Article/program/Delphi/201311/25180

Delphi中嵌入的数据库应用开发工具如Database Form Expert具有很强大的功能 我们不需要编写任何程序代码便可以快速地创建一个简单的数据库应用程序 甚至还能创建基于多个数据库表的主要──明细型数据库应用程序

本章主要介绍用Delphi开发简单的数据库应用程序的一般方法和步骤 首先让读者对Delphi强劲的数据库应用开发工具有一个直观的印象 然后在此基础上进行复杂的数据库应用程序的设计 本章主要包括以下内容

● 创建数据库应用窗体

包括用Database Form Expert 或手工方式创建简单的无需编写程序代码的应用程序或者利用多个部件并编写功能复杂的程序代码创建主要──明细型数据库应用程序

● 在应用程序中控制字段有关的属性

描述怎样读写数据库表中字段的值和控制字段的显示格式等

本章所介绍的例子中用到的窗体 数据库表以及相关的文件都是在安装Delphi时缺省安装在C:\DELPHI\DEMOS\DB\MASTAPP目录中 并且用别名DBDEMOS表示这一子目录 在本章例子中 除特殊声明外 所有的TTable和 TQuery 部件的 DatabaseName 属性都设置为DBDEMOS

简单的基于单表的据库应用

用Decphi创建显示一个数据库表中的内容的应用非常简单和方便 只需要三个部件 只要将这三个部件通过相关的属性相互联系起来 不需要编写任何程序代码便可以实现 例如 用户想查看数据库表Customer DB中的内容时 可以按下面步骤来实现

选择相关的部件

选择菜单Project/New开始一个新工程 并修改Form 的Caption属性为CustomerFrom 并把Name属性设置为CustomerForm 然后从部件选择板上的Data Access 页上选取一个Datasounce部件和一个Table部件放到窗体的左上角 它们是非可见的部件 在窗体中我们看到的只是部件的图标 从Data Control页上选取DBGrid部件放到窗体中前两个部件的下面 完成这些工作之后 窗体如图 所示

图在CustomerFrom 窗体中放置三个部件

设置部件的属性

为了使TDBGrid部件能够显示数据库表Customer DB中的客户信息 我们必须修改窗体三个部件相关的属性 这些属性的设置如表 所示

表 CustomerFrom 窗体中三个部件的属性设置

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

属 性 属 性 值

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

DataSource AutoEdit False

DataSource DataSet Table

Table DatabaseName DBDEMOS

Table TableName CUSTOMER DB

Table Active True

DBGrid DataSource DataSource

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

这里要注意的是 DBDEMOS是Delphi缺省安装时C:\Delphi\DEMO\DB\MASTAPP目录的别名 而且数据库表Customer DB存在该目录下 用户在使用这一例子时 请注意这两项设置都是正确的 另外 Datasource Dataset Table TableName和DBGrid Datasource属性都有下拉式列表框允许用户从可能的值列表中选择它们的值 这样能方便我们进行属性的设置 而且不容易出错

Datasouuce AutoEdit属性设置为False是为了防止用户修改数据库表中的数据 在下面的讨论中我们将详细地进行说明

Table Active设置为True时 Delphi会打开Table TableName所指定的数据库表 如果这个数据库表不存在(或表中什么也没有 即空表) Delphi 会d出出错信息并且Table Active变成False 当Table Active被设置成True之后 Table 部件的一些属性就不能再修改了 如Table DatabaseName和Table Tablename属性 若要修改它们 必须首先要将Table Active属性设置为False 然后再进行修改 否则 Delphi会d出错误信息 Cannot perform this operation on an open database 当看到这个错误信息时 只需把Table Active置成False 完成相关的修改后 再把 Table Active 属性设置为True

当我们把DBGrid DataSource的值设置成DataSource 时 Delphi会把Customer DB中的数据填充到DBGrid 部件中 并且可以用DBGrid 中的滚动条来浏览数据库表中的所有记录

运行程序

保存文件 命名代码单元为Cust pas 命名工程名为CustPRJ DPR 然后按F 编译并运行程序 程序执行之后 我们可以使用滚动条或键盘移动键在字段和记录间移动 但不能修改表中的数据 因为Datasouc AutoEdit 属性已被设置为False

Cust程序中的三个部件都有各自的特殊用途 三个部件的相关属性在内部相互联系生成最终的应用程序 TTable部件连接磁盘上的实际数据库表和应用程序中其他部件的通道 TTable部件具有打开和关闭 读取 更新以及其他处理磁盘数据库文件的方法

TDatasource部件是连接TTable部件和数据浏览部件如TDBGrid部件的桥梁 TDBGrid部件用于显示数据库表中的数据信息 它为应用程序提供一个直观的界面 图 阐述了这三个部件之间的关系

Cust程序中三个部件之间的内部关系

TDBGrid 部件的奇妙之处在于它知道如何去获取数据库表中的下一条或前一条记录 我们使用滚动条或箭头键便可以完成这项任务 TDBGrid部件不知道如何增加 删除和修改记录 如果想让 Cust 程序能够修改数据库表中的记录 只要把 Datasource 部件的AutoEdit属性设置成True 并重新编译和运行程序就可以达到目的 使用箭头键 把DBGrid的高亮度条定位到某一个字段上 然后键入新值 该字段中的值将被键入的新值所取代 并且当移动到另一条记录时 健入的信息会自动写入数据库表中 如果想放弃所做的改动 只需在离开该字段前按一下Escape键

如果想在表中增加新记录 可以把高亮度条移到网格底端的空白记录上并输入新记录的有关字段值 也可以在用户指定的某一条记录的后面插入一条新记录 只要把高亮度条定位到指定的记录上 按Ins键 使可以在该记录的后面插入新记录

删除某一条记录时 把高亮度条定位在想删除的记录的任何字段上 按Ctrl+ del键 这时会出现保护信息 我们可以确认是否真的想删除该项记录

TDBGrid为用户提供了较完备的功能 用于控制是否编辑 增加或删除记录 若想禁止对数据库表作任何修改 设置TDBGrid部件的Readonly属性为 True 并设置 Option dgEDiting为False(这将为我们提供一个只读的数据库表浏览器而不是数据库编辑器 但它隐含着增加 编辑和删除记录的能力) TDBGrid部件的这些属性和Option属性其它选项的各种不同组合可以让我们很方便地对数据库表进行有效的浏览 编辑等 *** 作

如果我们经常使用像电子表格那样的界面来显示和编辑数据记录 TDBGrid 部件便是一个很方便的工具 但那并不是最友好的用户界面 如果想拥有更优美更直观的界面 我们还可以使用单独的数据浏览部件来显示数据库表中各个字段的值 并利用TDBNavigator部件控制对数据库表的存取

lishixinzhi/Article/program/Delphi/201311/25173

Sybase和MicroSoft SQL Server数据库

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

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

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

文件名  描 述

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

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

SQLD_SS HLP  联机帮助文件

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

W DBLIB DLL  Sybase/MC SQL Server客户端的DLL文件

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

SYDC LD  Sybase语言驱动程序

SYDC LD  Sybase语言驱动程序

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

Informix数据库

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

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

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

文件名   描 述

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

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

SQLD_INF HLP  联机帮助文件

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

LDLLSQLW DLL  Informix客户端的DLL文件

ISAM IEM  Informix错误信息文件

OS IEM  Informix错误信息文件

RDS IEM  Informix错误信息文件

SECURITY IEM  Informix错误信息文件

SQL IEM  Informix错误信息文件

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

InterBase 数据库

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

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

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

文件名   描 述

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

SQLD_IB DLL  BDE SQL Link for InterBase的驱动程序

SQLD_IB HLP  联机帮助文件

SQL_IB CNF  InterBase驱动程序的BDE配置文件

CONNECT EXE  InterBase连接测试诊断工具

CONNECT HLP  InterBase连接测试诊断工具的帮助文件

GDS DLL  InterBase API DLL

REMOTE DLL  InterBase与网络的接口的DLL文件

INTERBASE MSG  InterBase错误信息文件

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

返回目录 DELPHI基础教程

       编辑推荐

       Java程序设计培训视频教程

       J EE高级框架实战培训视频教程

Visual C++音频/视频技术开发与实战

Oracle索引技术

ORACLE G数据库开发优化指南

Java程序性能优化 让你的Java程序更快 更稳定

C嵌入式编程设计模式

Android游戏开发实践指南

lishixinzhi/Article/program/Delphi/201311/25179

数据库系统概述

数据库系统为我们提供了一种把与我们的工作和生活紧密相关的信息集合在一起的方法 它还提供了在某个集中的地方存储和维护这些信息的方法 数据库系统主要由三大部分组成 数据库管理系统(DBMS:它是专门负责组织和管理数据信息的程序) 数据库应用程序(它使我们能够获取 显示和更新由DBMS存储的数据) 数据库(按一定结构组织在一起的相关数据的集合)

一般来说 DBMS和数据库应用程序都驻留在同一台计算机上并在同一台计算机上运行 很多情况下两者甚至结合在同一个程序中 以前使用的大多数数据库系统都是用这种方法设计的 但是随着DBMS技术的发展 目前的数据库系统正向客户/服务器模式发展 客户/服务器数据库将DBMS和数据库应用程序分开 从而提高了数据库系统的处理能力 数据库应用程序运行在一个或多个用户工作站(客户机)上 并且通过网络与运行在其它计算机上(服务器)的一个或多个DBMS进行通信

下面是数据库系统中一些概念和述语

数据库管理系统(DBMS)

数据库管理系统(DBMS)是用于描述 管理和维护数据库的程序系统 是数据库系统的核心组成部分 它建立在 *** 作系统的基础上 对数据库进行统一的管理和控制 其主要功能有

描述数据库 描述数据库的逻辑结构 存储结构 语义信息和保密要求等

管理数据库 控制整个数据库系统的运行 控制用户的并发性访问 检验数据的安全 保密与完整性 执行数据检索 插入 删除 修改等 *** 作

维护数据库 控制数据库初始数据的装入 记录工作日志 监视数据库性能 修改更新数据库 重新组织数据库 恢复出现故障的数据库

数据通信 :组织数据的传输

DBMS主要有四种类型 文件管理系统 层次数据库系统 网状数据库系统和关系数据库系统 因为目前关系数据库系统应用最为广泛 所以我们重点对关系数据库系统中的几个概念进行介绍

关系数据库(Relational Database) 一个关系数据库是由若干表组成 在Delphi中 数据库概念对应到物理文件上是有一些不同的 对于dBASE FoxPro Paradox这三种数据库系统 数据库对应于某一个子目录 而其它类型如MS Access Btrieve则是指某个文件 这是因为前者的表为单独的文件 而后者的表是聚集在一个数据库文件中的

表(Table) 一个表就是一组相关的数据按行排列 象一张表格一样 比如一个班所有学生的期末考试成绩 存在一个表中 每一行对应一名学生 在这一行中 包括学生的学号 姓名以及各门课程的成绩

字段(Field) 在表中 每一列称为一个字段 每一个字段都有相应的描述信息 如数据类型 数据宽度等

记录(Record) 在表中 每一行称为一条记录

索引(Index) 为了加快访问数据库的速度 许多数据库都使用索引

数据库应用程序

DBMS中存储了大量的数据信息 其目的是为用户提供数据信息服务 而数据库应用程序正是与DBMS进行通信 并访问DBMS中的数据 它是DBMS实现其对外提供数据信息服务这一目的的唯一途径 简单地说 数据库应用程序是一个允许用户插入 修改 删除并报告数据库中的数据的计算机程序 数据库应用程序在传统上是由程序员用一种或多种通用或专用的程序设计语言编写的 但是近年来出现了多种面向用户的数据库应用程序开发工具 这些工具可以简化使用DBMS的过程 并且不需要专门编程 Delphi就是一种强有力的数据库应用程序开发工具

用来生成数据库应用程序的语言主要分为三大类型

过程化语言

标准的计算机程序设计语言如Pascal Basic和C都是过程化语言 这些语言可以通过某种 应用程序接口 (API)来创建数据库应用程序 这种API由一组标准的函数(或调用)组成 这些函数和调用则扩展了语言的功能 使之能访问数据库中的数据 当程序设计人员用过程化语言创建数据库应用时 必须把应用的代码编写成一系列的过程 每个过程执行应用的某一部分的工作 如一个过程查询数据库 而另一过程更新数据库中的数据 然后不同的过程通过其他的用户界面过程(例如菜单系统)联系在一起 并且在应用中的适当地方运行

上述这些过程化语言一般用来创建非数据库应用程序 它们通常被称为 第三代语言 ( GL) 还有一些过程化程序设计语言是某种特定的DBMS专用的 这些语言一般被称为 第四代语言 ( GL) 即数据库专用语言 常见的数据库专用的过程化语言如dBASE语言 Paradox数据库的PAL语言等等

结构化查询语言(SQL)

结构化查询语言(Structure Query Language)是基于关系模型的数据库查询语言 它是一种非过程化的程序语言 也就是说 没有必要写出将如何做某事情 只需写出做到什么就可以了 写出的语句可看作是一个问题 称为 查询 (Query) 针对这个查询 得到所需的查询结果 下面是一个例子

Select Name Total from Class where Total>

这个查询意为从数据库表Class中将总分(Total)大于 的所有人选出来 并列出他们的姓名(Name)和总分(Total)

把SQL描述为子语言更适当一些 因为它没有任何屏幕处理或用户输入/输出的能力 它的主要目的是为了提供访问数据库的标准方法 而不管数据库应用的其余部分是用什么语言编写的 它既是为数据库的交互式查询而设计的(因此被称为动态SQL) 同时也可在过程化语言编写的数据库应用程序中使用(因此被称为嵌入式SQL)

lishixinzhi/Article/program/Delphi/201311/25182

其他语言

用于开发数据库应用程序的语言中 还可以使用目前数常见的 面向对象程序设计 (OOP)语言 如C++ Objact Pascal等 OOP代表了一种完全不同的程序设计方法 在这种程序设计方法中 活动被定义为在 对象 上发生的 *** 作 而不是作为一系列过程来定义的 在数据库应用程序中使用OOP语言的情况正在不断增加

开发数据库应用程序使用的另一种语言是 宏 语言 宏语言不是一种完全的程序设计语言 它实际上是一个用户手工输入的表 这个表被输入到应用程序中 以便自动执行一定的任务 对于某个特定应用的高级语言 宏语言通常可以在低档DBMS软件中或数据库服务器的前端中找到

最后 还有一种 Query By Example (QBE 范例查询)语言 严格地讲QBE不是一种语言 它是面向用户提供了一个或多个空表的界面 这些空表对应于数据库中的表 用户可以通过键盘选择需要查询的列 并在适当的列中填入条件从而定义查询的检索条件 然后DBMS就把QBE转换成相应的动作 以完成用户要求的查询任务

Delphi的数据库特性及功能简介

直到目前为止 计算机软件的开发分为两个不同的体系 其中一个体系是使用传统的程序设计语言(如Pascal Basic和C等)开发数值控制 数值运算等软件 围绕它们的重点是算术 数据结构以及近年产生的面向对象技术 另一个体系则是通用的数据库管理软件领域(数据库应用程序的开发) 这两个体系的发展都极为迅猛 但是二者并没出现混合渗透迹象 如果使用数据库语言进行传统的算术编程 虽然也能完成相应的功能 但是其编程过程可能极为复杂 如果使用传统的编程语言进行数据库编程 通过调用专用的数据库应用程序接口函数和过程 利用这些函数和过程提供的功能 可能也能做得比较完善 但这做起来大多是极其困难的 而Delphi结合了两个体系的优点 它结合了传统的编程语言Object Pascal和数据库语言的强大功能 它即可以用于传统的算术编程又可以用于数据库编程 特别是Delphi具有强大的数据库功能 利用Delphi的数据库工具 我们根本不需要编写任何Object Pascal代码便可以创建一个简单的数据库应用

Delphi是Borland公司于 年底发布的用于开发数据库应用程序的工具 它是面向对象的 它是目前开发客户/服务器数据库应用程序的强有力的工具 Delphi在Window 以上版本的系统环境下运行 目前具有两个版本 Delphi的标准版本和客户/服务器版本 标准版本包含一个Borland Database Engine的局部拷贝 它允许用户创建能访问dBASE Paradox和Local InterBase 服务器的数据库应用 它还支持具有 ODBC 接口的数据库 Delphi的客户/服务器版本包括Borland SQL Link 它能直接访问 ORACLE SyBase 和Microsoft SQL Server Informix以及InterBase数据库服务器

Delphi可以访问多种数据库管理系统的数据库 凭借窗体(Forms)和报表(Reports) BDE(Borland Database Engine)可以访问诸如Paradox dBASE 本地InterBase 服务器的数据库 也可以访问远程数据库服务器上的数据库(如ORACLE SyBase Informix等客户/服务器数据库中的数据库) 或任何经ODBC(Open Database Connecticity) 可访问的数据库管理系统中的数据库

Delphi的数据库特性

跟其他的应用程序一样 Delphi提供了许多部件以方便地创建数据库应用程序 数据库对象的数据成员既可在设计阶段设置 也可在运行阶段通过程序代码进行设置 Delphi的部件板上提供了两页数据库应用程序开发中所要使用的部件

数据访问页(Data Access Page)上的部件用于直接访问数据库中的数据库表

数据控制页(Data Control Page)上的部件用来与用户交互 显示 修改数据库中的数据

数据库应用程序首先是利用Delphi提供的数据库部件与BDE建立联系 然后再通过BDE与数据库联系 下图阐述了Delphi的数据库工具和部件 Delphi数据库应用程序与BDE 数据源之间的关系

下表概括了Delphi的数据库特性

表 Delphi的数据库特性

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

工具和部件   主 要 用 途

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

Data Access Components  访问数据库 数据库表 存贮过程等

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

Data Control Components  与用户交互 提供显示 修改数据库中数据的界面

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

Database Desktop(DBD)  建立 索引 查询数据库表以及访问 编辑来自各数据中的数据

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

ReportSmith  建立 浏览和打印数据库表中的数据

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

Borland Database Engine  数据库应用通过BDE访问dBASE Paradox数据库中的数据(BDE)  和本地InterBase数据库服务器中的数据

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

BDE Configuration  建立和管理BDE与数据库建立连接时所使用的数据库的

Utility  别名

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

Local InterBase Server  它是一个单用户 多例程的本地SQL数据库服务器 可在单机环境下用来开发或测试客户/服务器数据库应用程序 然后再将之扩展成一个访问远程数据库服务器如ORACLE SyBase Informix等

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

InterBase SQL Link  连接Delphi数据库应用程序一本地InterBase服务器的驱动程序

Delphi上述这些特性使得我们创建数据库应用程序通过BDE能够很灵活地与 dBASE Paradox Local InterBase数据库服务器进行连接并可以方便地访问其中的数据 我们在创建一个简单的数据库应用时通过使用Delphi提供的上述工具和部件甚至可以不需编写任何程序

BDE被自动地包含在Delphi中 因此 我们在创建数据库应用程序时 不必关心BDE的有关内容 Delphi的安装程序自动为Paradox dBASE和本地InterBaseServer 安装相应的驱动程序 并建立了有关的配置 DBE Configuration Utility 可以建立应用程序与数据库的连接信息 还可以为数据库设置别名

下表列出了Delphi开发Client/Server应用程序的有关特性 这些特性扩展了 Delphi访问远程数据库的功能 如SQL数据库服务器(ORACLE SyBase Informix Microsoft SQL Server InterBase)

表 Delphi Client/server数据库特性

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

工 具   主 要 用 途

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

SQL Drivers  SQL Drivers中的SQL link和ReportSmith为Delphi数据库应用程序提供了访问远程SQL服务器的驱动程序 如访问ORACLE SyBase Microsoft SQL server Informix Intermix

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

lishixinzhi/Article/program/Delphi/201311/25183

1、零基础,想要自学数据库的话,觉得起步阶段首选《数据库系统概念》这本书,因为这本书比较系统且综合全面。里面包含了数据模型、关系模型、基于对象的数据库以及XML、数据存储和查询、事务管理、数据库系统体系结构等各方面的相关内容。相当地直观易懂,里面的有些内容运用了结构清晰的图示和示例来取代形式化的证明。

2、然后,需要选择一个具体的数据库产品学习,比如常见的Access、SQL-Server、MySQL、Oracle、DB2,不同的数据库产品之间区别很大的,每一种数据库都有与之相应的经典书籍,官方也有那些入门文档。自己到网上搜对应的数据库名字就能找到了。当然,如果你想快餐式入门,那就看些视频或者国内的一些什么XXX从入门到精通、XX天精通XXX之类的书吧!

3、现在常见的数据库大部份都是关系型数据库,不管是理论和 *** 作基本都是一样的,如果从 *** 作和易学的角度来说,SQL SERVER还是比较容易上手的,网上的资料和各种书籍也不少,但是如果数据量大,数据库的稳定性来说,Oracle还是比较要强一点的。你就看自己的情况来选择吧!

3、总之,学习数据库,和学习其他电脑知识一样,要注重实践,也就是要上机实习。先学习一些数据库的基本概念,然后一边看书,一边上机,是个很好的方法。在网上去找一些有关的视频教程,跟着视频学习,会轻松一些。学习知识,关键在于持之以恒,这样才会有好的成绩。

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。

参考资料:

数据库-百度百科

以上就是关于DELPHI基础教程:Delphi开发数据库应用程序概述(二)[2]全部的内容,包括:DELPHI基础教程:Delphi开发数据库应用程序概述(二)[2]、谁能给我推荐个好的数据库教程、DELPHI基础教程:Delphi开发数据库应用程序概述(一)[3]等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10158154.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存