- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用Delphi开发网络的数据库应用
利用Delphi开发网络数据库应用
Delphi 是具可视化界面的面向对象编程语言,它以其功能强大、简便易用等诸多特性,深受编程人员的欢迎。Delphi 中提供了数据库引擎 BDE(Borland Database Engine),并内含众多的数据库调用构件,为编程人员开发客户/服务器应用程序提供了方便。通常情况下,利用 Delphi 开发数据库应用程序,可以使用TTable、TDataSource、TDBEdit、TDBNavigator等构件。只要正确设置了构件的某些属性,再编写必要的程序代码对一些特定事件进行处理,就能够完成对多种数据库进行的数据处理,例如:记录的输入、修改、删除和查询等。这样做虽然只需要编写极少量的程序代码就能达到很好的效果,但如果在程序设计过程中,某些数据表的结构发生了改变,则必须修改与此数据表有关的所有构件的属性,这将使程序员陷入繁琐的重复劳动中。 为避免上述的麻烦,我们可以在编写网络数据库应用程序时采用结构化查询语言 SQL(Structured Query Language),这样不仅可以更方便地与诸如 SQL Server、Oracle 等各种后台数据库进行动态的数据交换,而且可以使程序的修改和移植更加灵活。我们以数据输入模块为例,说明开发客户/服务器应用程序时如何采用 SQL 语句实现数据处理功能。首先,判断是否已经有事务处理程序在运行,如果有,将其回卷(rollback);如果没有,则启动一个新的事务,为数据的最终处理做准备。其次,是设置 SQL 语句,并将其写入 TQuery 构件中。最后,将事务提交或回卷,至此完成一条记录的数据输入。 下面是以页面中的 TEdit 类型编辑框内容作为数据源,向数据库输入记录的过程代码: procedure DataInsert(const qName:TQuery;szDBName:string;iNum:Integer; iMark:array of Integer;eName:array of TEdit);var i : Integer; szSQL : string;begin if DataModule1.DataBase1.InTransaction=true thenDataModule1.DataBase1.RollBack; DataModule1.DataBase1.StartTransaction; szSQL := #39;INSERT INTO #39;+szDBName+#39; VALUES(#39; for i:=0 to iNum-1 do begin if iMark[i]=0 thenszSQL := szSQL+eName[i].Text{非字符方式} elseszSQL := szSQL+#39;”#39;+eName[i].Text+#39;”#39;;{字符方式} if i=iNum-1 then szSQL := szSQL+#39;)#39; elseszSQL := szSQL+#39;,#39;; end; qName.Close;{关闭查询} qName.SQL.Clear;{清SQL特性内容} qName.SQL.ADD(szSQL);{添加SQL内容} szSQL := #39;SELECT * FROM #39;+szDBName; qName.SQL.ADD(szSQL); qName.Open;{返回结果集} DataModule1.DataBase1.Commit;end;以上过程包含五个参数,实现从页面中的一系列编辑框中读取数据,并向指定数据表输入的功能。其中,参数 qName 为页面中所使用的 TQuery 类构件的名称;参数 szDBName 是数据表的名称;参数eName 是 TEdit 类型的数组,列出了页面中包含数据的各编辑框名称;参数 iNum 是数据表中的字段个数,也即编辑框的个数;参数 iMark 是一个整数类型的数组,该参数表明相应字段是以何种方式输入的,如果是字符方式,需要在数据前后两端加上引号。需要注意的是:在调用本过程之前,应将数据库连接打开: DataModule1.DataBase1.Connected := true;过程调用完成后,将数据库连接断开:DataModule1.DataBase1.Connected := false; 另外,开发网络数据库应用程序时,还可以使用存储过程,即:将预先编译过的 SQL 语句存储在服务器上。存储过程提前运行,且不与程序代码一同存储和编译,因此其对应主程序中的代码相对简洁,运行速度也较快。SQL 语句的集中存放,使其修改更容易。 要创建向数据表中输入数据的存储过程,代码编写举例如下: CREATE P
您可能关注的文档
最近下载
- 宣城市畜禽规模养殖场粪污资源化利用技术指导手册.doc VIP
- 部编版语文五年级上册第七单元大单元作业设计1.docx VIP
- 词汇表--阿尔及利亚高速公路法语词分析.doc
- 全新版大学英语综合教程第三册Unit 3PPT.ppt VIP
- 《神经根型颈椎病》课件 .ppt VIP
- 道路交通信息显示设备设置规范(GAT 993-2021).pdf VIP
- 蒸发水量3000Kgh三效降膜并流蒸发系统设计.doc
- 【专项复习】小升初英语课件-核心考点+题型专项突破:专题 02 语音(48个音标)全国通用版.pptx VIP
- 封闭式母线安装施工图集.pdf VIP
- 营销部门2025客户画像分析与精准投放策略复盘PPT方案.pptx VIP
文档评论(0)