使用Delphi开发SQLServer应用程序.ppt

上传人:小飞机 文档编号:6549088 上传时间:2023-11-11 格式:PPT 页数:31 大小:225KB
返回 下载 相关 举报
使用Delphi开发SQLServer应用程序.ppt_第1页
第1页 / 共31页
使用Delphi开发SQLServer应用程序.ppt_第2页
第2页 / 共31页
使用Delphi开发SQLServer应用程序.ppt_第3页
第3页 / 共31页
使用Delphi开发SQLServer应用程序.ppt_第4页
第4页 / 共31页
使用Delphi开发SQLServer应用程序.ppt_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《使用Delphi开发SQLServer应用程序.ppt》由会员分享,可在线阅读,更多相关《使用Delphi开发SQLServer应用程序.ppt(31页珍藏版)》请在三一办公上搜索。

1、第13章 使用Delphi开发SQL Server应用程序,Delphi的开发环境Delphi应用程序的开发过程Delphi数据库应用程序的实现 13.1 Delphi概述13.2 Delphi应用程序举例分析13.3 Delphi应用程序的开发13.4 Delphi应用程序的实现,13.1 Delphi概述,13.1.1 Delphi的特点Delphi 7是一个针对Windows平台上的跨平台(Windows、Linux)快速开发(RAD)环境,完全支持新近出现的Web服务标准,并且整合了模型驱动的开发方式,同时该套件向开发者提供了对Microsoft.NET框架初步支持。Delphi实际上

2、是一个Object Pascal的编译器,它提供了一个强大的可视化开发环境,并提供了大量的组件,组件是Delphi中开发应用程序的基础,是建立应用程序界面所必须的基本元素。在Delphi中组件分成两个大类:可视组件与非可视组件。Delphi将所有的组件都封装在对应的类中,如Edit和ComboBox组件的对应类名是TEdit和TComboBox。对象是类的实例化,即相当于是某一个类的变量。因此Delphi中的所有组件都具有对象的所有特性:封装、继承性和多态性等。Delphi中的对象由三个部分组成:属性(Property)、方法(Method)和事件(Event),13.1.2 Delphi的开

3、发环境,启动Delphi 7主程序,进入图13-1所示的可视化开发环境。它有以下五部分组成。,13.1.2 Delphi的开发环境,1Delphi 主界面(Main Windows)主界面位于屏幕的上部,包括主菜单(Main Menu)、快捷按钮栏(Speed Bar)和组件面板(Component Panel)。2对象管理窗口(Object TreeView)对象管理窗口中显示出当前窗体的一棵对象树,用于描述当前窗体中的各个对象及对象之间的层次关系,,13.1.2 Delphi的开发环境,3对象监视器(Object Inspector)默认情况下,对象监视器位于屏幕左边的下方。它的功能是编辑

4、和管理一个对象的各项属性并为组件设置事件响应处理程序。对象监视器包含两部分。位于顶部的是一个下拉式组合框(简称对象列表框),该组合框中包含当前窗体中的所有对象,用户可以通过组合框右边的下拉按钮,从组合框中选择一个对象作为当前对象。顶部下拉式组合框的下面是一个具有Properties(属性)和Events(事件)两个选项卡的多选项卡,分别显示当前对象的属性和事件设置情况。Properties页列出了当前被选择对象的设计期属性,如图13-1所示。它分成左右两个部分,左边是属性名,右边是该属性对应的当前值。Events页列出了该对象所有可能发生的事件。它也分成左右两个部分,左边是事件名,右边是该事件

5、处理程序的名字,开始时右边都是空的。,13.1.2 Delphi的开发环境,4窗体(Form)Form窗体是应用程序开发时使用最多的一个工作区域。程序中的所有用户界面(即人机接口)均是在这里完成的,因此Form是程序开发阶段的主要战场。从开始菜单启动Delphi时,系统将自动生成一个名为ProjectX.dpr的工程项目,并将一个空白窗体Form1作为该项目的主窗口显示在用户的眼前;而从一个项目文件启动Delphi时,则用户看到的是该工程项目中的主窗口(Main Form)。窗体是一个可以放置其它组件的一个容器。设计时用户将组件面板中的若干个组件,按程序设计的要求,将它们放置在窗体的合适位置。

6、也可以使用鼠标将它们拖动到一个合适位置并随心所欲地改变它们的大小。一个应用程序可以拥有一个以上的窗体,但只能有一个主窗体,用户可以根据程序执行的需要按一定的显示方式显示应用程序中的不同窗体,以满足实际的需求。,13.1.2 Delphi的开发环境,5代码编辑器(Code Editor)窗口 代码编辑器是编写程序代码的场所,图13-1中在窗口Form1后面标有Unit1.PAS的窗口就是代码编辑器窗口。当用户在窗体中添加组件时,Delphi会自动地生成该组件所需的用户界面代码,用户需做的仅仅是在Delphi生成的代码框架中的适当位置加入完成所需功能的程序代码即可,如程序中所使用到的常量、变量、过

7、程和函数等就在代码编辑窗口中定义和使用。可以通过“Toggle Form/Unit”快捷按钮在Form窗体和该Form所对应的Unit单元代码窗口之间进行切换。代码编辑器窗口中显示的是当前的单元文件,该文件的名字显示在编辑器的标题栏中,如图中的Unit1.pas。当应用程序中含有一个以上的窗体或单元时,可以通过View Unit快捷按钮将指定的单元文件显示在代码编辑器窗口中,供用户编辑和修改。,13.2 Delphi应用程序举例分析,13.2.1 功能总体设计 为了实现学校教务管理系统,需要实现以下主要功能:l 基础信息的数据维护:包括系信息、专业信息、班级信息、学生信息、教师信息、课程类别和

8、课程信息的添加、修改和删除工作。l 根据每个专业的教学计划,将每个专业在不同学期的课程计划添加到专业课程设置信息表中。l 根据每个专业的教学计划,制定每个学期每个班级的课程表。l 根据课程计划,输入学生每个学期每门课程的成绩。l允许根据班级或学生个人查询每个学期的成绩,根据班级统计每个班每学期的成绩排名,并实现以上数据的报表输出。l 用户密码的维护。,13.2.2 功能模块的设计,13.2.2 功能模块的设计,图13-3,图13-4,图13-5,13.3 Delphi应用程序的开发,13.3.1 Delphi应用程序的组成 Delphi使用工程来管理应用程序中的各种文件。Delphi的应用程序

9、由工程文件、窗体文件及对应的单元文件、选项配置文件和资源文件等组成。应用程序创建后,这些文件就已经存在指定的目录中。Delphi应用程序中的文件有以下几种:1工程文件(Delphi Project File)工程文件是一个特殊的单元文件,由Delphi统一管理,一般读者不必关心,但对于需要深入学习Delphi的读者,工程文件是相当重要的,工程文件的扩展名为.dpr。工程文件用来初始化系统环境、建立应用程序主窗口和实例化其它窗口。,13.3 Delphi应用程序的开发,2单元文件(Unit File)工程文件中的代码仅仅是针对应用程序的,因此该文件往往很短,而程序中极大多数的功能均是在其它单元文

10、件中实现的,在工程文件中只要引用这些单元文件即可,这样可以将一个大的应用程序分解成若干个模块(即单元),再由工程文件将这些模块组合在一起而成为一个整体。这种模块化的设计使程序更为清晰且易于今后的维护。单元文件由单元文件首部、接口部分(interface)、实现部分(implementation)、可选的初始化部分(Initialization)、结束部分(finalization)和End.共同组成。,13.3 Delphi应用程序的开发,3窗体文件(Form File)窗体文件存储有关该窗体中对象的信息,它是一个二进制文件,窗体文件的扩展名为“.dfm”。每个窗体文件都有一个与之相对应的单元

11、文件,如有一个UnitStudent.dfm窗体文件,就存在一个名为UnitStudent.pas的单元文件。为方便用户,Delphi中提供了允许以文本格式观察窗体文件的功能。用鼠标右击窗体的空白位置,在弹出的快捷菜单中选择“View As Text”命令,系统将显示所在窗体的窗体文件内容,用户可以在该界面上修改窗体上各个对象的有关设置。再用鼠标右击窗体文件的文本区域,在弹出的快捷菜单中选择“View As Form”命令,又切换到Form状态。,13.3 Delphi应用程序的开发,4资源文件(Resource File)该文件由Delphi在创建应用程序时自动建立,用于存放与应用程序有关的

12、主题(Title)、应用程序图标和版本等信息。资源文件的基本文件名与应用程序的工程相同,扩展名为“.res”,是一个二进制文件。5工程选项文件(Delphi Options File)该文件由Delphi在创建应用程序时自动建立,用于存放与应用程序有关的工程选项等信息。工程选项文件的基本文件名与应用程序的工程相同,扩展名为“.dof”,是一个文本文件。6编译指令配置文件 该文件由Delphi在创建应用程序时自动建立,用于存放与应用程序有关的编译指令的设置信息。编译指令配置文件的基本文件名与应用程序的工程相同,扩展名为“.cfg”,是一个文本文件。,13.3 Delphi应用程序的开发,7备份文

13、件 当生成的工程文件、单元文件和窗体文件修改后,系统自动将原文件做一个备份。备份文件的基本文件名与原文件相同,而扩展名改为“.dpr”、“.pas”和“.dfm”。应用程序编译连接后,又会自动生成:程序可执行文件 应用程序经过编译连接后最后生成的可执行文件。单元目标文件 每个单元文件经过编译后生成一个对应的单元目标文件,该单元目标文件被链接到最后生成的可执行文件中。单元目标文件的扩展名为“.dcu”。动态连接库文件当用户指定要将该应用程序生成动态连接库时,那么就生成该文件。动态连接库文件的扩展名为“.dll”。,13.3 Delphi应用程序的开发,7备份文件 当生成的工程文件、单元文件和窗体

14、文件修改后,系统自动将原文件做一个备份。备份文件的基本文件名与原文件相同,而扩展名改为“.dpr”、“.pas”和“.dfm”。应用程序编译连接后,又会自动生成:程序可执行文件 应用程序经过编译连接后最后生成的可执行文件。单元目标文件 每个单元文件经过编译后生成一个对应的单元目标文件,该单元目标文件被链接到最后生成的可执行文件中。单元目标文件的扩展名为“.dcu”。动态连接库文件当用户指定要将该应用程序生成动态连接库时,那么就生成该文件。动态连接库文件的扩展名为“.dll”。,13.3.2 工程管理,1使用工程管理器(Project Manager)一般一个工程中包含若干个窗体及单元文件,为了

15、有效地管理工程中的各种不同文件,可以使用Delphi提供的工程管理器来管理。2工程选项设置 Delphi为每个工程创建了一个工程选项文件,用于保存与该工程相关的参数。工程文件的基本文件名与工程名相同,扩展名为“.dof”。可以利用“Project Options”工程选项对话框修改工程中的选项,以符合应用程序的需要。,13.3.3 Delphi应用程序的开发过程,Delphi应用程序的开发过程一般分为以下几个步骤:1创建新的应用程序 当用户启动Delphi后,系统就自动创建了一个新的应用程序,它只有一个空白的Form1窗体。用户可以直接在该空白的窗体中开始一个应用程序设计之旅,也可以执行主菜单

16、的“New”“Application”命令来建立一个新的工程。2.向应用程序添加窗体 Windows应用程序是由若干个窗体组成的。一个应用程序可以根据需要拥有多个窗体,当多于1个窗体时,就需为应用程序添加窗体。单击快捷按钮“New Form”,可以快速地为当前应用程序添加一个新的空白窗体。3.设计窗体 窗体创建完成后,就需要根据程序的设计要求向窗体中加入需要的组件。,13.3.3 Delphi应用程序的开发过程,4设置对象属性 通过对象属性的修改可以改变该对象的显示特征。属性的设置既可以在设计阶段进行,也可以通过语句的方式在程序运行期间根据需要进行设置。5.为对象编写事件处理程序 对象的属性设

17、置完成后,还需要为对象编写事件处理程序。所谓事件处理程序,就是指程序运行时当用户在该对象上发生了该事件后,程序所要完成的处理动作。实际编程时,不是每个对象都需要编写事件处理程序的,只要根据程序设计的要求对指定的对象编写事件处理程序即可。6.保存文件 当应用程序建立完成后,要及时将应用程序中的文件存盘。7.编译与执行程序 先执行菜单中的“Project”“Build 工程文件名”来编译和连接应用程序,然后再调试和运行程序。,13.4 Delphi应用程序的实现,13.4.1 使用到的组件 学校教务管理系统中,使用了组件面板中“Standard”页的Label、Edit和CheckBox组件、“A

18、dditional”页中的SpeedButton、BitBtn组件、“BDE”页中的Database、Table、Query、UpdateSQL组件、“Data Controls”页中的DBEdit、DBComboBox、DBLookupComboBox、DBText、DBGrid和DBNavigator组件、“Data Access”页中的DataSource组件和“Win32”页中的DateTimePicker组件。13.4.2 创建新的应用程序 执行主菜单的“New”“Application”命令,创建一个新的工程。工程中自动创建一个名为“Form1”的空白窗体,工程名自动命名为“Pro

19、ject1”。,13.4.3 数据模块的设计,为使程序中的各个窗体能使用同一个Database组件连接到数据库,使用同一个Table、Query访问同一个数据表中的数据,避免每个窗体使用不同访问组件访问同一个数据表,本程序中使用了Delphi提供的数据模块功能。1)执行主菜单的“New”“DataModule”命令,Delphi在当前应用程序中添加一个空白的数据模块。2)向数据模块窗体中放置一个Database组件、两个DataSource组件、一个Table组件、一个Query组件和一个UpdateSQL组件,如图13-4所示。3)Database组件用于连接数据库。单击Database组件

20、,设置数据库组件的所需属性。将Name属性修改为DatabaseEdu;双击Database组件,系统出现如图13-13所示的配置连接数据库参数对话框。,13.4.3 数据模块的设计,4)在“Name”输入框中指定一个数据库名,应用程序中的其它数据组件通过该数据库名连接到指定的数据库,这里输入Edu。5)下拉“Alias Name”列表框,从中选择一个已创建的ODBC数据源名,这里选择在第12章中创建的EduDSN。6)单击“Defaults”按钮,Delphi将根据“Alias Name”列表框中指定的ODBC数据源名自动创建连接数据库的初始参数表,并将该参数表显示在“Parameter O

21、verrides”列表框中。“Parameter Overrides”列表框中的每一行是一个连接参数,在“PASSWORD=”的后面加上edu,用于设置连接密码,“USER NAME=”的后面加上Useredu,用于设置连接用户名,其它参数取默认值。7)在“Options”栏中,去掉“Login Prompt”复选框中的选中标记。8)单击“OK”按钮,保存Database组件的连接参数。,13.4.3 数据模块的设计,9)在对象监视器中将Database组件的Connected属性设置为True,验证连接参数的正确性。10)其它组件的设置请参见表13-1所示。,13.4.3 数据模块的设计,1

22、1)双击UpdateSQL1,系统出现如图13-14所示的“Update SQL editor”设置窗口。12)在“Options”选项页的“Table Name”中是关联的数据表名;“Key Fields”列表框中选中该表的关键字字段,Student表的主关键字字段是StudentID;“Update Fields”列表框中选择需更新的字段,这里选中所有的字段,效果如图13-14所示。13)单击“Generate SQL”按钮,由Delphi根据前面步骤中设置的参数自动生成对应的数据表插入、更新和删除语句。14)单击“SQL”选项卡,出现图13-15所示的“Update SQL editor

23、”设置窗口的“SQL”选项页。,图13-14,图13-15,13.4.3 数据模块的设计,15)单击“OK”按钮,关闭“Update SQL Editor”设置窗口。16)设置DM_Data数据模块的相关事件。在对象监视器中选中DM_Data,单击“Events”选项卡,切换到事件页,双击“OnCreate”事件名后的空白输入栏,Delphi将自动在当前单元中生成“OnCreate”事件所对应的过程定义框架,并将光标置入该过程代码的前面,在此,输入:DatabaseEdu.Connected:=True;/运行时,先连接数据源用于在程序运行时,由系统自动连接数据库。同样,双击“OnDestro

24、y”事件名后的空白输入栏,Delphi将自动在当前单元中生成“OnDestroy”事件所对应的过程定义框架,并将光标置入该过程代码的前面,在OnDestroy事件中,输入:DatabaseEdu.Connected:=False;/断开与数据源的连接用于程序运行结束时,由系统自动断开与数据库的连接。17)单击快捷按钮“”,将数据模块的单元文件以“UnitDM.pas”存盘。至此数据模块设计完成,按以上参数设置后的数据模块窗体如图13-4所示。,13.4.4 学生信息管理窗体的设计,设置了数据模块后,该应用程序就可以使用数据模块与相关数据库进行连接,在其它的窗体上就可以使用数据模块上的相关组件连

25、接数据库,操作数据库中的相关数据。1)单击快捷按钮组中的“”按钮,在出现的“View Form”对话框中选中“Form1”窗体,单击“OK”按钮,出现“Form1”空白窗体。或单击“”按钮,在当前应用程序中添加一个空白的Form窗体。2)向窗体上加入五个SpeedButton按钮、三个Label标签、四个DBEdit、一个DBComboBox、一个DBLookupComboBox、一个DateTimePicker、一个DBText、一个DBGrid和一个DBNavigator组件。在窗体的适当位置放置这些组件,如图13-10所示。,13.4.4 学生信息管理窗体的设计,3)为了引用数据模块上的

26、对象,在学生信息管理窗体对应单元文件的implementation关键字后的单元引用部分输入uses UnitDM;表示学生信息管理窗体要引用UnitDM单元(即数据模块)中定义的对象。4)按表13-2设置相关参数。设置各个属性后的学生信息管理窗体如图13-11所示。5)设置窗体各对象所需事件的代码。选中FormStudent窗体,单击“Events”选项卡,切换到事件页,双击“OnShow”事件名后的空白输入栏,Delphi将自动在当前单元中生成“OnShow”事件所对应的过程定义框架,并将光标置入该过程代码的前面,在此,按书上代码输入FormStudent的OnShow事件.6)双击“On

27、Close”事件名后的空白输入栏,按书上代码编写FormStudent的OnClose事件。,13.4.4 学生信息管理窗体的设计,7)因数据显示组件中没有对应的日期组件,因此需要在数据表的记录指针移动后,将学生的出生年月送入DateTimeBirthday对象中显示。这里自定义了一个QueryStudent对象的AfterScroll事件,用于实现以上任务。8)同样,系统要将用户在DateTimeBirthday对象中对学生出生年月的修改保存到相应的数据表中。这里自定义了一个QueryStudent对象的BeforePost事件,用于实现以上任务。9)选中DateTimeBirthday对象

28、,按书中代码编写DateTimeBirthday的OnChange事件.10)双击SpeedButton1对象,按书中代码编写SpeedButton1的OnClick事件。11)SpeedButton2、SpeedButton3、SpeedButton4和SpeedButton5对象共享SpeedButton1的“OnClick”事件。12)单击快捷按钮“”,将学生信息管理的单元文件以“UnitStudent.pas”存盘。,13.4.5 查询窗体的设计,用户在学生信息管理窗体上单击“学号”、“姓名”、“出生年月”、“所在班级”和“联系电话”按钮,将调用查询窗体,用于输入查询值,实现按对应字段

29、进行相应的查询,并将查询结果显示在学生信息管理窗体上。1)在当前应用程序中添加一个空白的Form窗体。2)向窗体中加入一个Label、一个Edit、两个BitBtn和一个CheckBox组件。并按表13-3设置各个组件的属性值。3)设置属性后的查询窗体如图13-5所示。4)单击“保存”按钮,将查询窗体的单元文件以“UnitSearch.pas”存盘。至此,学生查询窗体设计完成。,13.4.6 编译、调试和执行程序,执行主菜单的“File”“Save Project As”命令,将应用程序以“Pro13_1.dpr”文件名存盘。执行主菜单的“Project”“Build Pro13_1”命令,对应用程序进行编译和连接,生成“Pro13_1.exe”可执行文件。编译应用程序时,系统显示如下图所示的要求添加引用信息框。单击“Yes”按钮,Delphi将自动在学生信息管理窗体所对应的单元文件中添加对查询窗体的引用。单击“运行”按钮运行程序,出现如图13-3所示的学生信息管理界面。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号