想用ADO了,但很多事要解决,这是其中第二件。想看就看看吧。(200分)

  • 主题发起人 主题发起人 guojun
  • 开始时间 开始时间
G

guojun

Unregistered / Unconfirmed
GUEST, unregistred user!
第一件在
http://www.delphibbs.com/delphibbs/DispQ.asp?LID=703830
===============================================================================
用BDE的时候,TQuery可以接一个TUpdateSQL,通过TUpdateSQL可
以提交某些字段。比如:
TQuery.SQL : SELECT B.ACNO,B.ACNAME,A.AMT
FROM VOUCH A, ACCOUNT B
WHERE A.ACNO=B.ACNO
但是在更新时可以只更新一个表Vouch,比如:
TupdateSQL.ModifySQL :
UPDATE VOUCH
SET AMT=:AMT
WHERE ACNO=:OLD_ACNO
用ADO时,ADOQuery好象没有UpdateObject属性,怎么实现上述传
统的BDE的功能呢?

回答问题有分,帮忙提前、灌水亦有分,
 
发送SQL语句 Update *** 。
 
ADo自动实现从多表select后的更新
 
ado自动实现更新,数据库操作。
速度也比BDE快。
特别在win2000下
 
问题正好出现在我不想让它自动去提交,非得自己去提交
 
以上说的意思是,在你提交的时候它自动实现你要用TupdateSql实现的功能。
说的不太清楚,你试一下就明白了
 
ADO是可以自动做,不过看他的Where子句长得要命,让我想起TupdateSQL的好处。
 
ADO支持对多表操作,向上面的SQL语句,可以用
ADOQUERY1.EDIT;
ADOQUERY1.FIELDBYNAME('AMT').ASINTEGER:=10;
ADOQUERY1.POST;
ADOQUERY1.REFRESH;
 
设置UpdateMode可以指导ADO如何决定定位记录。
 
听一位前辈说过ADO支持数据的实时更新吧??当你提交的时候就实现UPdata了
道听图说而已,我还没想用ADO
 
ADO的UpdateBatch方法
 
用 ClientDataSet + DataSetProvider + Query(ADOQuery)结构:
在DataSetProvider的事件中自行处理
 
你将CACHSIZE := 1000就可以获得最佳的效率,同时也是需要你自己
UpdateBacch才会提交的呀!!
 
多人接受答案了。
 
后退
顶部