Delphi三层开发小技巧:TClientDataSet的Delta妙用
摘要:Delphi做三层开发时,很多人都会在客户端放一个TClientDataSet,中间层远程数据模块就对应放一个TDataSetProvider,然后再连起来.其实这种方法很烦琐,而且程序痈肿不甘,不好维护.我们都知道TClientDataSet的Delta属性记录了数据的所有修改,应用它我们就可以方便的实现一个单表更新的通用方法. 首先,在中间层添加一个方法,就叫ApplyUpdates吧.方法定义如下: function ApplyUpdates(const UpdateTable:String;Delta:Variant;out err:String):Boolean;参数UpdateTa
阅读全文
posted @
2011-04-21 10:11
fyen
阅读(3700)
推荐(0)
SQL2000 触发器实例
摘要:/*建立虚拟测试环境,包含:表[卷烟库存表],表[卷烟销售表]。请大家注意跟踪这两个表的数据,体会触发器到底执行了什么业务逻辑,对数据有什么影响。为了能更清晰的表述触发器的作用,表结构存在数据冗余,且不符合第三范式,这里特此说明。*/USE MasterGOIF EXISTS (SELECT NAME FROM SYSOBJECTS WHERE XTYPE = ’U’ AND NAME = ’卷烟库存表’)DROP TABLE 卷烟库存表GOIF EXISTS (SELECT NAME FROM SYSOBJECTS WHERE XTYPE = ’U’ AND NAME = ’卷烟销售表’)D
阅读全文
posted @
2011-04-21 10:09
fyen
阅读(5022)
推荐(1)
Delphi三层 server 下数据连接缓冲池
摘要:unit uAppCenter;{$WARN SYMBOL_PLATFORM OFF}interfaceusesWindows, ComObj, ComServ, ActiveX, HISAPP_TLB, Classes, SyncObjs, StdVcl,VCLCom, SysUtils, Forms, uDataType;typeTAppCenter = class(TComponent, IRDMSystem)private function LockRDM: IRDMSystem; procedure UnlockRDM(Value: IRDMSystem);protected { 实
阅读全文
posted @
2011-04-21 09:22
fyen
阅读(1845)
推荐(1)
FireBird编程从入门到精通2
摘要:前言从来没有过这么一种数据库,能够像InterBase/FireBird一样富有激情。这是一种完全为程序员准备的数据库,就像瑞士军刀一样小巧、方便、实用。以往的数据库,不是太大太笨重(例如,Oracle、MS SQL、DB2),就是太简陋,功能不足(例如My SQL)。而InterBase/FireBird则是在两者之间找到了一个很好的平衡点,笔者不妨称之为“中型数据库”。随着硬件环境的不断发展,普通的个人电脑的计算能力越来越逼近并不太久以前的大型计算机的能力,这种趋势同时也大大推动了与此相适应的中型数据库的应用。中型数据库逐渐蚕食大型数据库的市场,这几乎是一个明显的趋势。随着软硬件条件的不断
阅读全文
posted @
2011-04-12 22:48
fyen
阅读(4468)
推荐(1)
FireBird编程从入门到精通
摘要:从来没有过这么一种数据库,能够像InterBase/FireBird一样富有激情。这是一种完全为程序员准备的数据库,就像瑞士军刀一样小巧、方便、实用。以往的数据库,不是太大太笨重(例如,Oracle、MS SQL、DB2),就是太简陋,功能不足(例如My SQL)。而InterBase/FireBird则是在两者之间找到了一个很好的平衡点,笔者不妨称之为“中型数据库”。随着硬件环境的不断发展,普通的个人电脑的计算能力越来越逼近并不太久以前的大型计算机的能力,这种趋势同时也大大推动了与此相适应的中型数据库的应用。中型数据库逐渐蚕食大型数据库的市场,这几乎是一个明显的趋势。随着软硬件条件的不断发展
阅读全文
posted @
2011-04-12 22:36
fyen
阅读(17819)
推荐(4)
Delphi让你的程序通过XP防火墙
摘要:procedure TForm1.Button1Click(Sender: TObject);var FwMgr,Profile,FwApp: variant;begin FwMgr := CreateOLEObject('HNetCfg.FwMgr'); Profile := FwMgr.LocalPolicy.CurrentProfile; FwApp := CreateOLEObject('HNetCfg.FwAuthorizedApplication'); FwApp.Name :='我的测试'; //显示名字 FwApp.Process
阅读全文
posted @
2011-04-03 23:44
fyen
阅读(589)
推荐(0)