L linger_1 Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-08 #1 实现功能是这样的,点击删除则将该记录从数据库内删除,然后Dbgrid即时更新, 显示目前数据库的内容,但是现在我实现的是有时能更新有时就不能更新,请问是 什么原因呢?该如何解决?
A antic_ant Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-08 #2 用dbgrid 的refresh是不起做用的 你把数据库close 然后在open
Z zhch_liu Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-08 #3 antic_ant 说的极是,但他所说的数据库是指Tquery控件或Ttable控件
J jmsczb Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-08 #5 对于ADO ,antic_ant 说的也可以的,没错的
X _xiaofeng Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-08 #7 把表更新一下,如table.refresh 或table.active:=false ;table.active:=true; 再把dbgrid.refresh 应该可以了
0 002670 Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-08 #9 先關後幵,可以解決,但速度太慢. 你可以用 Tquery控件的話 你可以加一個updatesql 控件 設定 Tquery控件的 updateobject 的屬性為updatesql 來連接Tquery控件和updatesql控件 cachedupdates 的屬性為true requestlive 的屬性為true 雙擊updatesql,設定它的 generate sql 那你做甚麼動作都可以 Query1.Append; Query1.Delete; 記住 做動作之后 再做以下動作就一定可以了 Query1.ApplyUpdates Query1.CommitUpdates
先關後幵,可以解決,但速度太慢. 你可以用 Tquery控件的話 你可以加一個updatesql 控件 設定 Tquery控件的 updateobject 的屬性為updatesql 來連接Tquery控件和updatesql控件 cachedupdates 的屬性為true requestlive 的屬性為true 雙擊updatesql,設定它的 generate sql 那你做甚麼動作都可以 Query1.Append; Query1.Delete; 記住 做動作之后 再做以下動作就一定可以了 Query1.ApplyUpdates Query1.CommitUpdates
Y YNTW Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-08 #10 应更新的是DBGrid连接的数据集,而不是DBGrid
D DELPHI鸟 Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-09 #11 用table.refresh 或table.active:=false ;table.active:=true;很慢的,因为你需要调用 整个数据库的数据,如果数据量大的话就会有客户骂你了,(机器为什么死了啊!) 你实际是在更新DBGRID所连的数据库,建议使用QUERY,QUERY.close ; 再QUERY.open 就OK 了.
用table.refresh 或table.active:=false ;table.active:=true;很慢的,因为你需要调用 整个数据库的数据,如果数据量大的话就会有客户骂你了,(机器为什么死了啊!) 你实际是在更新DBGRID所连的数据库,建议使用QUERY,QUERY.close ; 再QUERY.open 就OK 了.
J jqw Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-09 #12 with query do begin disablecontrols; close; open; enablecontrols; end; very quickly
狮 狮子王 Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-09 #13 如过你用的是Query的话,实在不行就在Qurey的SQL属性中动态的添加一条查询语句! with qurey do begin sql.clear; sql.add ('select * from table'); open; end;
如过你用的是Query的话,实在不行就在Qurey的SQL属性中动态的添加一条查询语句! with qurey do begin sql.clear; sql.add ('select * from table'); open; end;
W weekboy Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-10 #15 在删除或更新后用datasource1.ondatachange(sender);(记不清拼写) (datasource1是Dbgrid数据源)
S saellen Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-10 #16 数据表记录先定位. 关闭数据表. 打开数据表. 数据表记录重定位.
P peter_peng1980 Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-12 #18 应该用数据库的的刷新,用query的话就用close,open; 用table的话就用refresh;有的时候可以多写几个refresh;
L linger_1 Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-12 #19 query里面我写了close和open了,但是就是有时候能刷新有时候不能
J jackl Unregistered / Unconfirmed GUEST, unregistred user! 2001-11-12 #20 close; open; 最笨的方法,不过效率好像不高!