Multi-Tier结构程序开发基础教程 (一.1) 作者:z33
鉴于同学们刚接解Delphi,并对老师上课所讲的Multi-Tier结构编程不是十分理解,所以我写了下面一个教程,给我最好的同学们,希望这篇教程能帮助同学们更好的学习Delphi,不要掉队,也希望我通过写一写学习的经验,总结一下,对Delphi有更深的了解。 |
这一节里,其实我应该讲一下ActionList的Standard action来实现DBNavigator的工能,因为本节所讲的并没能真正的实现它的ClientDataSet的ApplyUpdates的功能,也就是说不能提交数据,但现在我该睡觉了,所以剩下的留到下一节去讲吧。如果你觉得我讲的有问题,哪个地方讲错了,欢迎来找我讨论,大家一起学习,最后。。。。希望大家都能看明白。呵呵~ 对了,还有就是多层的数据库异常处理,虽然老师演示了一下,但我仍然有些地方不明白,想老师新建的那一个Reconcile Error Dialog来做异常处理我觉处理没什么价值,而且不合理,等我再研究研究。:) |
本节源程序下载 | 真正实现ApplyUpdates源程序下载
Multi-Tier结构程序开发基础教程 (一.2) 作者:z33
上一节只讲了Multi-Tier的连接,其实上一节就应该把这个一起都讲了,但因为时间有限,所以分成两部分讲了,呵呵~。 因为Multi-Tier结构和普通单机对数据库操作是不一样的,我们也就无法用单机的方法往数据库里写数据,这一节就讲一下在多层结构下对数据操作。 |
我们要再利用上第一节的程序,这次要往上放一些对数据操作的功能。
一、首先现在我们不用DBNavigator1,而用ActionList控件来实现数据的操作,,我们还需要自己建5个铵钮,并通过ActionList的Standard Action来实现这些功能。
1、往Form1上放5个铵钮,再拖一个Standard控件栏的最后一个控件:ActionList控件,这个控件是帮助我们快速完成铵钮功能的控件,如图:
下面我们来实现它: a.双击ActionList控件,出现Editing Form1.ActionList1窗口,在窗口左半部空白处点鼠标右键,再选“New Standard Action...”项,如图:
b. 出现了Stand Action列表,我们在里面找到DataSet项,把这项里的所有子项都选上,再点OK,如图: c.再设置每个按钮的Action属性为对应的Action预置功能。如下表:
铵钮 |
Action属性 |
实现功能 |
Button1 |
DataSetInsert1 |
插入一条数据 |
Button2 |
DataSetEdit1 |
编辑当前记录 |
Button3 |
DataSetDelete1 |
删除当前记录 |
Button4 |
DataSetCancel1 |
取消当前操作 |
Button5 |
不设置 |
把修改写入数据库(Caption:=写入) | d. 把每个铵钮的Caption 相对应功能的名称即可。如图: e. 双击“写入”按钮,在里面写入如下加粗的语句就可以实现向数据库提交修改: procedure TForm1.Button5Click(Sender: TObject); begin clientdataset1.ApplyUpdates(0); showmessage('已经成功写入数据库中'); end; 其中ApplyUpdates是ClientDataSet的方法(method),功能是提交客户端数据到服务器端,括号里的0表示发生错误的最大值为0,即不允许有错误。 |
到这里咱们的第一节就完了, 我该去洗洗睡了~~,这次没讲多少东西,最主要的就是那个写入铵钮的clientdataset1.ApplyUpdates(0);这个语句才能实现向数据库提交数据。 下一节讲一下Multi-Tier的Transaction(事务处理),服务器响应机制和错误处理机制。 |
源程序下载 
|