登陆注册
16017000000030

第30章 数据库应用程序设计(4)

数据表结构设定完成后,单击【SaveAs】按钮,弹出【SaveTableAs】对话框,如图12-19所示。

(5)在【文件名】编辑框中输入创建的表名,然后单击【保存】按钮,数据表创建完毕。

对已经存在的数据表,用户也可以进行修改,在图12-17所示的【CreateParadox7Table(untitled)】对话框中,单击【Borrow】按钮,弹出【SelectBorrowTable】对话框,如图12-20所示,在列表框中选择要修改的数据表,然后单击【打开】按钮,显示如图12-18所示对话框,用户可以对这个已存在的数据表进行修改。

2.使用DatabaseDesktop向数据表中输入数据

使用DatabaseDesktop向数据表中输入数据的步骤如下。

(1)按如上介绍的方法打开如图12-15所示的【DatabaseDesktop】窗口。

(2)执行【File】→【Open】→【Table】菜单命令,弹出【OpenTable】对话框,如图12-21所示。

(3)在列表框中选择要打开的数据表,然后单击【打开】按钮,【DatabaseDesktop】窗口中显示打开的数据表,如图12-22所示,显然这是一个没有数据记录的空数据表。

(4)执行窗口中的【Table】→【EditData】菜单命令,或单击工具栏【EditData】工具按钮,打开的数据表进入编辑状态,如图12-23所示。

(5)输入第一个记录的姓名字段,然后按回车键,高亮条移到第二个字段处,按同样方法输入第一个记录各个字段。完成后按回车键,高亮条移到第二个记录姓名字段处,按如上方法输入第二个记录各字段,…,直到数据表数据输入完毕,输入了部分数据的数据表如图12-24所示。

(6)单击数据表右上角“关闭”按钮,或执行窗口【File】→【Close】菜单命令,关闭数据表。若不在DatabaseDesktop中进行其他操作,执行【File】→【Exit】菜单命令,或单击窗口右上角的“关闭”按钮,退出【DatabaseDesktop】。

Delphi的数据库管理工具DatabaseDesktop还具有查询数据表数据等功能。

12.3.2配置ODBC

ODBC是Microsoft公司制定的一个数据库前端存取标准界面,用于开发网络环境下客户机/服务器模式数据库应用系统,可以让客户端数据库应用程序访问不同的数据库,只要这种数据库具有ODBC接口,只要ODBC安装了这种数据库的驱动程序。

通过ODBC访问网络数据库,是当前数据库应用程序的常用模式。对这种模式的数据库应用程序,需要在创建数据库之后配置ODBC。

配置ODBC是在计算机操作系统的环境中进行的,不同的操作系统,具体的配置方法基本相同,这里以Windows2000Server操作系统为例,简单介绍ODBC的配置方法。

(1)执行【开始】→【程序】→【管理工具】→【数据源(ODBC)】系统菜单命令,打开【ODBC数据源管理器】对话框,如图12-25所示。

(2)通常若要访问的数据库在本机上,则选择【系统DSN】选项卡;若要访问的数据库在远程数据库服务器上,则选择【用户DSN】选项卡,这里以【用户DSN】选项卡为例。

(3)初次配置ODBC,单击【添加】按钮,弹出【创建新数据源】对话框,如图12-26所示。

(4)在【选择您想为其安装数据源的驱动程序(S)】列表框中选择用户使用的数据库管理系统,如SQLServer,然后单击【完成】按钮,关闭该对话框,弹出【建立新的数据源到SQLServer】对话框(1),如图12-27所示。

(5)在【名称(M)】编辑框中输入用户数据源的名称,可以使用用户数据库的名称,也可以另外命名数据源的名称;在【服务器(S)】组合框的编辑框中直接输入或者从其下拉列表中选择数据库服务器,可以是服务器的IP地址,也可以是服务器的机器名称,然后单击【下一步】按钮,对话框如图12-28所示。

(6)对于“SQLServer应该如何验证登录ID的真伪?”,通常选择【使用用户输入登录ID和密码SQLServer验证(S)】单选按钮,在【登录ID(L)】编辑框中可以取默认的登录ID:Administrator,也可以另行输入登录ID,通常用sa;在【密码(P)】编辑框中输入登录密码,登录密码由用户安装数据库管理系统时决定;通常客户端配置取默认配置即可,然后单击【下一步】按钮,对话框如图12-29所示。

(7)选择【更改默认的数据库为(D)】复选框,在组合框中选择用户数据库的名称,其他设置取默认设置,然后单击【下一步】按钮,对话框如图12-30所示。

(8)通常对所有设置取默认设置,直接单击【完成】按钮,弹出【ODBCMicrosoftSQLServer安装】对话框,对话框列出了以上的设置情况,如图12-31所示,用户可以检查是否正确。

(9)为了检测ODBC数据源是否连接成功,单击【测试数据源】按钮,弹出【SQLServerODBC数据源测试】对话框,给出测试结果,若连接成功,应显示“测试成功”字样,如图12-32所示。

(10)单击【确定】按钮,关闭对话框,显示返回图12-31所示的【ODBCMicrosoftSQLServer安装】对话框。

(11)单击【确定】按钮,关闭对话框,显示返回图12-25所示的【ODBC数据源管理器】对话框,若测试成功,单击【确定】按钮,退出ODBC配置;若不成功,单击【配置】

按钮,重新进行配置,直到成功为止。

12.3.3设置BDE

如前所述,Delphi是通过BDE与数据库链接的,要实现Delphi应用程序对数据库的访问,必须正确设置BDE参数。

设置BDE是通过BDEAdministrator(BDE管理器)完成的,设置BDE的步骤如下。

(1)执行【开始】→【程序】→【BorlandDelphi6】→【BDEAdministrator】菜单命令,启动BDE管理器,如图12-33所示。

BDE管理器窗口左边有两个选项卡,【Databases】选项卡列出了默认的BDE驱动的数据库或数据库别名,选择其中一个数据库或数据库别名,窗口的右边的【Definition】选项卡显示该数据库的有关参数;【Configuration】选项卡用于配置各种数据库的驱动程序或配置BDE本身参数。

(2)若【Databases】选项卡列出的数据库中有用户使用数据库,则可以对有关参数加以修改直接使用;若没有,则需新建。右击【Databases】选项卡中的【Databases】图标、执行快捷菜单中的【New】菜单命令,或执行窗口菜单栏中的【Object】→【New】菜单命令,弹出【NewDatabaseAlias】对话框,如图12-34所示。

(3)在下拉列表中选择用户需要的数据库类型,如SQLServer,然后单击【OK】按钮,选择的数据库以“ODBC1”的别名显示在【BDEAdministrator】窗口的【Databases】选项卡中,用户可以将该别名改为自己需要的别名。

(4)选择新建的数据库别名,窗口右边【Definition】选项卡显示该数据库的参数列表,用户在选项卡中设置需要的参数,其内容随数据库的不同而不同。如对SQLServer来说,DATABASENAME和ODBCDSN应设置为用户数据库的名称,SQLQRYMODE应设置为SERVER,USERNAME应设置为ODBC中设置的登录ID,如前设置的sa,然后单击工具栏的【Apply】工具按钮,BDE设置完毕。

(5)双击设置参数的数据库别名,弹出【DatabaseLogin】对话框,如图12-35所示。

对话框的【UserName】编辑框中,显示确定的用户登录名,在【Password】编辑框中输入用户登录口令,然后单击【OK】按钮,若窗口右边【Definition】选项卡中的参数名称变成粗体字,则说明BDE设置正确。

12.3.4设计应用程序界面

设计应用程序界面,就是根据应用程序的功能和操作要求,设置窗体的属性,在窗体中放置需要的组件并设置它们的属性。

设计数据库应用程序界面和设计一般应用程序界面,方法没有什么不同,只是要熟悉Delphi提供的丰富的数据库组件的功能和使用方法,合理选择和正确使用这些组件,从而设计出外形美观、使用方便、功能满足要求的数据库应用程序界面。

除了手工设计,Delphi还提供了一个数据库应用程序界面设计工具--FormWizard(数据库窗体向导)。使用它,可以方便、快捷地设计符合用户要求的数据库应用程序界面。

12.3.5编写应用程序代码

编写应用程序代码,就是根据应用程序的功能要求,选择对象的事件,编写事件处理代码。

编写数据库应用程序事件处理代码同一般应用程序没有什么不同,需要注意的是:要掌握Delphi数据组件一些重要事件的使用方法。

12.3.6运行、调试应用程序

应用程序界面和代码设计完成后,就可以运行应用程序了。如果运行中出现问题,还要进行调试。这一步同其他的应用程序是相同的。

12.4数据库应用程序设计举例

本节将通过一个图书管理系统的数据库应用程序例子,具体讲述Delphi数据库应用程序的设计方法。

例12-1设计一个简单的图书管理系统数据库应用程序。

这里使用SQLServer数据库实现图书管理,在SQLServer中建立名为TSGL(图书管理)的数据库。

通常图书管理应有如下功能。

数据维护:包括图书登记、读者登记。

图书借阅:包括出借图书、归还图书。

查询:包括图书查询、读者查询、借阅查询。

根据功能要求,需要在TSGL数据库中建立3个数据表:TSBM(图书编目)表、DZMC(读者名册)表和TSJY(图书借阅)表。这3个表的结构分别如下。

TSBM:

SH:图书编号,char(字符串)类型,8字节长

SM:图书名称,varchar(可变长字符串)类型,50

LB:图书类别,varchar类型,16

ZZ:作者姓名,varchar类型,20

CBS:出版社,varchar类型,20

CBRQ:出版日期,datetime(日期时间)类型,固定长度DJ:定价,图书定价,menoy(货币)类型,固定长度BZ:备注,varchar,50

DZMC:

JSZH:借书证号,char类型,6

XM:读者姓名,varchar类型,8

XB:读者性别,char类型,2

ZY:读者职业,varchar类型,8

DW:读者单位,varchar类型,12

BZ:备注,varchar,50

TSJY:

SH:图书编号,char类型,8

JCBZ:图书借出标志,char类型,4

JSZH:借书证号,char类型,6

JCRQ:借出日期,datetime类型

在这3个数据表中,TSBM和TSJY表通过JSZH字段相关联,DZMC和TSJY表通过SH字段相关联。这样,TSJY表就可以减少一些冗余的字段,如SM、XM等。

创建数据库、数据表及向数据表输入必要的数据后,按如上介绍的方法,配置ODBC和BDE。

12.4.1应用程序主界面

首先按照如上所述图书管理的功能要求,设计应用程序主界面。

主界面中,可以用菜单控制,也可以用按钮控制,这里用菜单控制。设计好的程序主界面如图12-36所示。

根据该管理系统的功能要求,窗体中菜单栏各主菜单项的级联菜单如下所示:

查询:图书借阅:数据维护:

主窗体Name属性值为MainForm,【图书信息查询】菜单项Name属性值为Ntscx,【读者信息查询】菜单项Name属性值为Ndzcx,【借出图书查询】菜单项Name属性值为Njccx,【出借图书】菜单项Name属性值为Ncjts,【归还图书】菜单项Name属性值为Nghts,【图书登记】菜单项Name属性值为Ntsdj,【读者登记】菜单项Name属性值为Ndzdj,【退出系统】菜单项Name属性值为Ntcxt。

12.4.2各功能模块程序界面及实现代码

1.图书信息查询

1)程序界面

【图书信息查询】窗体如图12-37所示。

窗体及组件的属性设置如表12-2所示。

为使DBGrid标题用汉字显示,还应双击DBGrid组件,用前面介绍的方法,利用弹出的【EditorDBGridtscx.Columns】对话框编辑其Title属性的Caption等子属性。

2)程序代码

(1)在Unit1单元文件的implementation段中加入usesUnit2;(2)根据功能要求,单击程序主界面【图书信息查询】菜单命令,打开如图12-37所示的【图书信息查询】窗口,因此Unit1单元文件的TMainForm.NtscxClick(Sender:TObject)事件处理代码如下:

(3)查询功能的实现

从【查询关键字选择】组合框中选择查询的关键字,在【查询关键字设置】编辑框中输入相应的关键字参数,然后单击【查询】按钮,则数据网格中列出按选定关键字查询的结果。

【查询】按钮的事件处理代码如下:

(4)返回功能的实现

单击【返回】按钮,关闭【图书信息查询】窗口,显示程序主窗口。【返回】按钮的事件处理代码如下:

2.读者信息查询

用同【图书信息查询】类似的方法,设计【读者信息查询】功能模块。

1)程序界面

【读者信息查询】窗体如图12-38所示。

窗体及组件的属性设置如表12-3所示。

2)程序代码

(1)在Unit1单元文件的implementation段中加入usesUnit3;(2)根据功能要求,鼠标单击程序主界面【读者信息查询】菜单命令,打开图12-38所示的【读者信息查询】窗口,因此Unit1单元文件的TMainForm.NdzcxClick(Sender:TObject)事件处理代码如下:

(3)查询功能的实现

从【查询关键字选择】组合框中选择查询的关键字,在【查询关键字设置】编辑框中输入相应的关键字参数,然后单击【查询】按钮,则数据网格中列出按选定关键字查询的结果。

【查询】按钮的事件处理代码如下:

(4)返回功能的实现

用鼠标单击【返回】按钮,关闭【读者信息查询】窗口,显示程序主窗口。【返回】按钮的事件处理代码如下:

3.借出图书查询

同样,可以设计【借出图书查询】功能模块。

1)程序界面

【借出图书查询】窗体如图12-39所示。

同类推荐
  • Delphi程序设计教程

    Delphi程序设计教程

    本书为适应不同层次读者的需要,从Delphi的基本知识讲起,由浅入深,全面讲述了Delphi的集成开发环境、Delphi的编程语言——ObjectPascal、常用组件的使用、窗体的设计、菜单的设计、对话框的设计、多文档界面程序的设计、多媒体编程和数据库应用程序设计等内容。
  • 信息技术教育大全-计算机网络

    信息技术教育大全-计算机网络

    信息技术教育大全-计算机网络信息技术教育大全-计算机网络信息技术教育大全-计算机网络信息技术教育大全-计算机网络信息技术教育大全-计算机网络信息技术教育大全-计算机网络信息技术教育大全-计算机网络
  • 三维动画审美谈

    三维动画审美谈

    数字时代,美的标准充满更多的不确定性。而三维动画以数字图像形式成为这个图时代的代表。三维动画及三维图像不仅仅是由于应用了仿真数字图像技术而带来的虚拟空间,还有更多的是由三维图像技术所引发或引导的被扩展的图像技术,这些技术无不应用在现代视觉设计领域的各个方面,并且,由此引起社会的追热,引起审美观念的改变。这些改变是在进行中的,变化中的,也是在发展中的。对于未知的美,我们做的只是追寻和记录,我们不知道以后的美将会是什么样,尽管我们苦苦追寻,孜孜探讨,同时也在默默审视。我们在追寻中享受美,在探讨中认知美,在审视中体验美……
  • 如何操作电脑

    如何操作电脑

    信息社会是科技、文化发展,知识爆炸的结果。不懂得计算机,将处于半文盲的境地。因此,对于计算机,不仅要作为工具使用,已经是一项文化普及的要求。我们不仅要会使用计算机做一些诸如文字处理等具体工作,更要培养一种计算机意识。
  • 科学伴你行-神奇的通信技术

    科学伴你行-神奇的通信技术

    在日常生活中,有时人们要借助于小旗子来进行通信联络,比如,开运动会时,发令员常常要用小旗子与计时员联系;当你乘坐火车进入车站时,都会看到车站工作人员拿着红色和绿色的小旗子在站台上进行指挥;在战争中,打出白色旗子表示投降,插上红色旗子表明胜利;航行在茫茫大海上的船只,双方船员会凭不同旗帜组成的标志,来了解对方的意思。以上种种用小旗子来“说话”的通信方式就叫做旗语。
热门推荐
  • 总裁的叛逆情人(全本)

    总裁的叛逆情人(全本)

    十五岁家破人亡后她带着妹妹相依为命,一场突如其来的车祸让她不得不为了医药费而‘荣登’他的情人宝座。他是尉迟集团的总裁,也是世人眼中遥不可及的尉迟少爷。他一向冷漠无情,心狠手辣,没有人敢违背他的意思,除了她```【片段一】开学第一天,他开着抢眼的红色跑车送她到学校。“阮青晨,从今以后别让我看见你身边有别的男人!”他一贯冷冷的箍住她的脸蛋。她淡淡的挥开他的魔爪下了车。第二天放学,她带着身后的三个男人大摇大摆的从他车边走过。【片段二】他抚摸着她熟睡的脸庞,嘴角扬起一丝不易察觉的笑。“阮青晨,是不是只要你怀上宝宝就不会再这么叛逆了?”两个月后,他无意中从她书包里翻出一张‘人流手术单’。推荐自己的新文:http://novel.hongxiu.com/a/274139/(逼婚:亿万总裁是恶魔)三年后,她是全国最强大组织里,最绝情的杀手```他再次看到她的时候,她的任务是杀了他,而她的眼里没有夹杂任何一点情感``
  • 男神老公拐回家:交火365天

    男神老公拐回家:交火365天

    走投无路的小羊羔被腹黑大灰狼相救。偏偏这只大灰狼视她如心肝,疼她进肺腑。“楚徽,我爸的公司被陈子铭买走了……”某女意味深长。“乖,喊我一声老公,我就给你买买买。”某男勾唇。“……”某女犹豫。某男眼眸深邃:“喊老公的话,我就放大招帮你虐渣男渣女,虐到你爽点十足。”。某女眼冒星星:“老公~”
  • 嗜血魔妃:废材九小姐

    嗜血魔妃:废材九小姐

    她,M国首席杀手。姐妹背叛,一场精心策划的隐形爆炸,同一时间因自己研制的毒药而毒发身亡。她,荆荨大陆扬名天下的草包废物。懦弱无能,被“亲姐姐”毁容淹死。然,当银眸再次睁开,绝色锋芒,霸气腹黑,倾尽天下。说她废物?睁大狗眼仔细瞧好了。萌兽一大筐,美男一大萝,神丹神器都在手,八系全开,真正的身份亮瞎你的眼!不要怀疑,这是绝对的女强萌宠文,女强男强,齐齐联手。一生一世一双人!
  • 紫樱邂逅

    紫樱邂逅

    她幼年目睹父母惨死,被主人收养,苦练七年,成为顶级杀手,一心为父母报仇!不曾想,她竟是认贼作父。报仇不成,她惨遭追杀,流落街头,奄奄一息被他救回家中。知道她无家可归,他好心将她收留。两人在同一屋檐下,惺惺相惜。杀害父母的凶手再次闯入她的生活,一切会如何继续?
  • 管人三十六计

    管人三十六计

    《管人三十六计》借鉴三十六计体裁,共六篇,每篇六计,六六三十六计。细嚼每个故事,你将成为卓越的管理者。一个优秀的管理者就是要具有“领而导之”的能力,他要懂得用人学、权力学、驭下学、容才学、激励学和情感学。实际上,管理不是西方人的专利,中国历史中饱含大量关于领导和管理的精辟论述,《孙子兵法》云:“视卒如婴儿,帮可与之赴深渊;视卒如爱子,帮可与之俱死”;“学如弓弩,才如箭镞,识以领之,方能中鹤”。
  • 嗨,总裁

    嗨,总裁

    Hi,总裁,你好!宅女春天。斗智斗勇,击退绿茶女,守护真爱!
  • 恶魔专属:丫头,小心点

    恶魔专属:丫头,小心点

    将来江晚秋是江家企业唯一继承者,他们家公司由于受到冷氏集团的打压,父母每日承受巨大的压力,最后双双患上抑郁症,跳楼自杀,他们的女儿江晚秋也曾自杀,却没有成功,是东方翼救了她,最后他们两个在一起经历了很多事,最后擦出了爱情的火花!
  • 全民搜索

    全民搜索

    五岁的男孩蛋蛋在五星级酒店走失,被黄子荣捡到,黄子荣因自己四岁女儿身陷病痛无钱可治,萌生拐卖蛋蛋之意。却岂料这五岁孩子的走失在全国掀起强烈的搜索风暴。当金钱摧毁了人性,当理智让贫困泯灭,我们唯期待一场时间与灵魂的较量。
  • 穿越之爱仇情恨

    穿越之爱仇情恨

    好!既然上天让她重活一次,那么她不辱天命!她要翻手覆天,掀起风浪!额……至于终身问题吗,是要阳光开朗的小太阳?还是腹黑成熟妖孽男?要不然还有傲娇怀气的小帅哥?
  • 顺天道

    顺天道

    “我的道,只有一条:顺天而为,执守本心。”主角凭借卓越的资质拜入昆仑,而他选的道,却是最神秘的通灵之道。与神秘诡异的契约灵签订契约:擎天巨蟒白矖、幻化万千的嗜血妖藤、修炼千年的恶灵......习得御水三千之道,操控轮回通灵之花。此岸昆仑风景甚好,那彼岸仙途风景又如何呢?他人逆天争仙,而我,便要顺天寻仙!《顺天道》已经与17K小说网签约。