delphi课件 数据库编程

上传人:jiups****uk12 文档编号:57050964 上传时间:2018-10-18 格式:PPT 页数:72 大小:243KB
返回 下载 相关 举报
delphi课件 数据库编程_第1页
第1页 / 共72页
delphi课件 数据库编程_第2页
第2页 / 共72页
delphi课件 数据库编程_第3页
第3页 / 共72页
delphi课件 数据库编程_第4页
第4页 / 共72页
delphi课件 数据库编程_第5页
第5页 / 共72页
点击查看更多>>
资源描述

《delphi课件 数据库编程》由会员分享,可在线阅读,更多相关《delphi课件 数据库编程(72页珍藏版)》请在金锄头文库上搜索。

1、1,课程设计 主讲教员:李雷 讲师 通信工程学院计算机中心 2010.4.27,计算机科学与技术专业,2,数据库应用程序设计,1数据库系统概述 2 Delphi数据库应用程序体系结构 3数据库设计 4常用数据库组件 5 数据库应用程序综合实例,3,1 数据库系统概述-Delphi的数据库特性,Delphi提供了许多组件以方便地创建数据库应用程序。它可以访问多种数据库管理系统的数据库,数据库对象的数据成员既可在设计阶段设置,也可在运行阶段通过程序代码进行设置。Delphi的组件面板上提供了数据库应用程序开发中需要使用的组件选项卡。,4,1 数据库系统概述-Delphi可以使用的数据源,Delph

2、i数据库应用程序可以通过BDE获取它们所需的数据,BDE与不同类型的数据源打交道,BDE可以使用的数据源见下表。,5,1 数据库系统概述-Delphi可以使用的数据源,BDE可以使用的数据源,6,2 Delphi数据库应用程序体系结构,一个数据库应用程序往往包括两部分:数据库访问部分和用户界面。数据库访问部分直接或间接访问数据库,这为数据库应用程序和数据库之间提供接口;而用户界面主要是为了方便用户使用,尽量要设计友好的界面,方便用户操作。 在编写数据库应用程序时,一般把数据库访问部分和用户界面分别封装到不同的模块中。在Delphi中提供了数据模块(Data Module)这种容器,在编写数据库

3、应用程序时把数据库访问部分的内容放在数据模块中,这样就便于数据库应用程序数据存取的一致性,便于程序的调试和后期维护。 数据库应用程序的体系结构主要由两方面决定,一方面是使用的数据库类型(即是本地数据库还是远程数据库),另一方面是同时访问数据库的用户数以及数据库中需要存储哪些类型的信息。由此,数据库应用程序结构可以分为三种:单层结构、两层结构和多层结构。,7,2 Delphi数据库应用程序体系结构,单层结构 在单层数据库应用程序中,应用程序和数据库共享同一个文件系统,它们使用本地数据库或文件来存取数据。一个单层的数据库应用程序同时包含了用户界面和数据访问机制(可能是通过BDE,也可能是通过文件)

4、。单层数据库应用程序的体系结构如图9-1所示。在此结构中,可以通过基于BDE的数据集组件从本地数据库中获取数据,再通过数据源(DataSource)组件向用户提供数据。,8,2 Delphi数据库应用程序体系结构,单层数据库应用程序的结构,9,2 Delphi数据库应用程序体系结构,两层结构 在两层数据库应用程序中,客户程序提供用户界面,通过BDE、ADO从远程数据库服务器获取数据。两层数据库应用程序的体系结构如图9-2所示。 把一个单层数据库应用程序转换为两层数据库应用程序,只要修改数据集组件的属性连接一个SQL服务器就行了。,10,2 Delphi数据库应用程序体系结构,两层数据库应用程序

5、的结构,11,2 Delphi数据库应用程序体系结构,多层结构 多层数据库应用程序是为了适应网络技术的飞速发展而发展起来的一种新技术。它把整个应用程序分为多个单元,所有单元一齐合作完成对数据库的管理。它是建立在两层数据库应用基础上的,只要深刻理解了两层数据库模型,就能很好地掌握多层结构数据库应用程序。,12,2 Delphi数据库应用程序体系结构,在多层结构数据库应用程序中,客户程序、应用服务器和远程数据库服务器通常分布在不同的机器上。客户程序主要提供用户界面,它向应用服务器请求数据和申请更新数据,再由应用服务器向远程数据库服务器请求数据和申请更新数据。,13,3 数据库设计,数据库应用程序的

6、设计包括两个部分:数据库设计和应用程序设计。在开发数据库应用程序之前,必须进行需求分析,对数据库的概念结构、逻辑结构和物理结构进行规范设计,这是决定数据库应用程序开发成败的关键。通常数据库所包含的大量信息是以表的形式存储。数据库中有的表是独立的,有的表之间存在一定的关系,设计数据库就是将大量信息经过分析和归纳,分别存储到多个表中,确定表之间的相互关系。,14,3 数据库设计,常用数据库 在Delphi 7中要开发数据库应用程序,首要的任务就是访问数据库。Delphi 7可以访问多种数据库,如Paradox、Access等基于文本的数据库、Oracal、Infomix、MicroSoft SQL

7、 Server等大型数据库。对这些数据库的访问可以通过BDE、ADO组件中的OLE DB方式进行访问。,15,3 数据库设计,常用数据库有 1Paradox 2Access 3大型数据库 常用的大型数据库有InterBase、Oracle、Sybase、Infomix、DB2和Microsoft SQL Server等,16,3 数据库设计,数据库、表的创建与维护 1. 创建数据库 2. 创建表 3. 修改表结构 4. 向表中添加记录,17,3 数据库设计,Department表结构,18,3 数据库设计,Employees表结构,19,3 数据库设计,Department表中的记录信息,20

8、,4 常用数据库组件,Delphi 7提供了很多的数据库组件,使得开发数据库应用程序变得相当容易。Delphi 7中为了创建数据库应用程序需要使用BDE数据集组件、数据访问组件和数据控制组件。Delphi使用可视化的组件创建数据库应用程序,跟创建其它的非数据库应用程序一样,数据库组件都具备一定的属性,程序设计人员可以在设计过程中设置组件的多种属性,也可以在程序运行过程中通过程序来设置组件的各种属性。在Delphi组件面板上的Data Access和Data Control选项卡上的组件是用于开发数据库应用程序的。数据访问组件、数据控制组件以及它们与数据库、用户界面的有机联系如图9-14所示。,

9、21,4 常用数据库组件,数据库组件的体系结构,22,4 常用数据库组件,BDE数据集组件 BDE选项卡上有数据集组件TTable、TQuery、TStoredProc以及与TQuery组件相联系的TUpdateSQL组件。Database与Session组件用于建立数据库连接;BatchMove组件用于复制数据;NestedTable组件主要用于将主从关系的数据嵌套在子数据库表格中。BDEClientDataSet组件将ClientDataSet与BDE相关的数据访问组件结合起来。,23,4 常用数据库组件,1TTable组件 用途 TTable组件是使用频率最高的数据库组件,该组件 可以建

10、立数据库应用程序 (2) 主要属性 Active属性 DatabaseName属性 TableName属性 TableType属性 Exclusive属性,24,4 常用数据库组件,(3) 与表的创建与删除相关的属性与方法 Fields属性 FieldDefs属性 CreateTable方法 DeleteTable方法 RenameTable方法 (4) 与数据库表索引相关的属性和方法 IndexName属性 IndexFieldCount属性和IndexFields属性 IndexDefs属性 GetIndexNames方法,25,4 常用数据库组件,(5) 数据查询 Locate方法和Lo

11、okup方法 GotoKey方法和FindKey方法 GotoNearest方法和FindNearest方法 SetKey方法 (6) 与表记录的定位、增加、删除、修改操作相关的属性和方法 BOF和EOF属性 RecNo属性 First方法和Last方法 Prior方法和Next方法 Append方法和AppendRecord方法 Insert方法和InsertRecord方法 Post方法和Edit方法 Cancel方法和Delete方法 SetRecords方法 EmptyTable方法,26,4 常用数据库组件,在前例所创建的数据库基础上使用Table组件 实现查询、插入、删除、更新的功

12、能。 查询代码编写 单击设计界面中的“查询”按钮,查询employees.db数 据库表中的记录。Delphi提供了多种实现查询功能的 方法: 调用Locate方法 在“查询”按钮的Onclick事件的处理程序中加入如下代码: procedure TForm1.Button1Click(Sender: TObject); begin Table1.Locate(姓名,丁一,); /查询姓名为“丁一”的记录 end;,27,4 常用数据库组件, 调用GotoKey方法 在查询之前,要确保查询的字段是关键字段或辅助索引字段,如果要查询的字段不是关键字段或辅助索引字段,则查询过程失败,系统会报错。

13、例如,在“查询”按钮的Onclick事件的处理程序中加入如下代码: procedure TForm1.Button1Click(Sender: TObject); begin Table1.IndexFieldNames:=职工号; /指定查询字段 Table1.SetKey; /将Table1置为查询状态 Table1.Fields0.AsString:=111001; /指定查询字段值 Table1.GotoKey; /进行查询end; End;,28,4 常用数据库组件,插入功能实现 用 Insert 方法实现插入功能 在“插入”按钮的Onclick事件的处理程序中加入如下代码: pro

14、cedure TForm1.Button2Click(Sender: TObject); beginTable1.Insert; /设置为插入状态Table1.Fields0.AsString:=111002; /设置要插入的值Table1.Post; /将插入的记录写回数据库 End;,29,4 常用数据库组件, 用 Append 方法实现插入功能 在“插入”按钮的Onclick事件的处理程序中加入如下代码: (* 实现在尾部插入一条职工号为“111003”的记录*) procedure TForm1.Button2Click(Sender: TObject); beginTable1.Ap

15、pend; /设置为插入状态Table1.Fields0.AsString:=111003; /设置要插入的值Table1.Post; /将插入的记录写回数据库 End;,30,4 常用数据库组件,(4) 删除功能实现 在“删除”按钮的Onclick事件的处理程序中加入如下代码: procedure TForm1.Button3Click(Sender: TObject);beginTable1.Delete; /删除记录指针指向的记录End;,31,4 常用数据库组件,(5) 更新功能实现 在“更新”按钮的Onclick事件处理程序中加入如下代码: procedure TForm1.Butt

16、on3Click(Sender: TObject); beginTable1.Edit; /将Table控件置成编辑状态Table1.Fields0.AsString:=王芳Table1.Post; /将修改后的记录写回数据库 End;,32,4 常用数据库组件,2TQuery组件 用途 Delphi中的另一个重要的数据集组件是TQuery, 它需要使用SQL语言命令来进行查询。Delphi通过 TQuery组件实现了对SQL语言的支持,在Delphi 开发的数据库应用程序中,SQL语句通过TQuery 组件传递到要访问的数据库系统的数据库引擎上 ,由数据库引擎具体执行SQL语句,以实现对数据 的操作,而不是传递给Delphi中的BDE,由BDE实 施具体的SQL动作。,

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

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

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