急急急!!!采用DbGrid+Datasource+Query+UPdateSQL连数据库时,Query只对一个表进行查询,Query的CachedUpdate属性为false,RequestLive属性为true,UpdateObject为UPdateSQL,在前端DBGrid中对表数据进行新增或修改后,数据显示不正常,如新增一条记录,那么原来的记录可能会消失几条,必须刷新此Query数据集前端数据才会显示正常。如果不刷新数据集,请问那位有解决的办法?多谢了,还可加分。
解决方案 »
- 通过控件名称转换后动态赋值问题
- 关于HOOK 函数,能勾住,但是就是无法替换原有函数。
- 数据据以主副表进行连接,在副表中录入数据,后,一直只能第一行.
- 类似泡泡的一个小游戏,请大哥们帮帮我!!!给我一个思路啊~~
- 关于主从表实现的方法,希望大家给点意见。
- 请大哥们帮我合并这两个表?
- 刚安装好Delphi7.0,不知其版本的dbGrideh在哪里下载?
- 100点求用delphi不用ODBC或者BDE处理DBF文件的源程序
- 请问怎么去掉报表窗体上的最小化按钮?去掉窗体上的不行?报表的还在!UP有分!!!
- 对不起,各位高手想问一个问题???望解答
- 请教三个安装相关问题
- 我的SQL2000用了混合认证模式,为什么使用程序之前还要登录服务器才能连接?
再用book回到刚才的记录,很笨的办法
加入TDatabase,设置AliasName为数据库别名
再连TQuery,
使用缓存更新,CacheUpdate为true。
刷新建议用close再open,refresh有bug。
DataSource1.DataSet.DisableControls;
query1.Active:=false;
query1.Active:=true;
DataSource1.DataSet.EnableControls;
query1.refresh;
query1.delete;
再用book回到刚才的记录,很笨的办法
这个方法挺好!!
DataSource1.DataSet.DisableControls;
query1.Active:=false;
query1.Active:=true;
DataSource1.DataSet.EnableControls;
我有一方法,可以解决。
加用一组件UpdateSQL;
我是用BCB的,下面是参考:
Query->CatchedUpdate=true;
Query-UpdateObject=UpdateSQL
先用Query的Edit,Append,Insert,Post Cancel
再用UpdateSQL在Query的AfterPost事件更新Server上的数据。
不过你不要用TNavigator,你要新编写Edit ,Post,Append,Cancel,Delete
等按鈕
会出现你所说的现象。解决方法:
with Query1 do
begin
Append;
....
FieldByname('fieldname').Value:=YourValue;
...
Post;
end;