DBGrid1的数据集由Table1提供,Table1的Tablename初始为:rs_temppay
其中在Table1的afterpost事件中:table1.refresh
其实我就是想实现:DBGrid1中输入数据 然后直接更新到后台数据中。
还有一个ComboBox1控件用来决定Table1连接后台数据中哪个表。
在ComboBox1的change事件中,切换Table1所连接表,
事件:
case combobox1.itemindex of
0:begin
table1.active:=false;
table1.tablename:='rs_temppay';
table1.active:=true;
table1.edit;
end;
1:begin
table1.active:=false;
table1.tablename:='rs_table';
table1.active:=true;
table1.edit;
end;
问题:在没有触发combobox1的change事件时可以修改DBGrid1中各字段的值,也能反应到后台数据库
但在触发combobox1的change事件后。报错:'Table does not support this operation because it is not uniquely indexed'
即使我所的表和初始表为同一个表时也会报这个错。
为什么报这个错误!我建了一个索引是唯一的。
怎么达到我想要的结果。
其中在Table1的afterpost事件中:table1.refresh
其实我就是想实现:DBGrid1中输入数据 然后直接更新到后台数据中。
还有一个ComboBox1控件用来决定Table1连接后台数据中哪个表。
在ComboBox1的change事件中,切换Table1所连接表,
事件:
case combobox1.itemindex of
0:begin
table1.active:=false;
table1.tablename:='rs_temppay';
table1.active:=true;
table1.edit;
end;
1:begin
table1.active:=false;
table1.tablename:='rs_table';
table1.active:=true;
table1.edit;
end;
问题:在没有触发combobox1的change事件时可以修改DBGrid1中各字段的值,也能反应到后台数据库
但在触发combobox1的change事件后。报错:'Table does not support this operation because it is not uniquely indexed'
即使我所的表和初始表为同一个表时也会报这个错。
为什么报这个错误!我建了一个索引是唯一的。
怎么达到我想要的结果。
解决方案 »
- ListBox透明问题
- 为什么 我的DLL注入到 EXplorer成功后 没有执行相关的代码呢 还有 就是机器重新启动之后 怎么就没有呢呢
- 两个Dbgrid表数据自动进行比较的问题请教???
- 不懂是那里有错误了,请指教!
- 如何注册一个COM,急!!
- 关于TAPILine控件安装的问题
- 字段設置了EditMask後,dbedit的底部出現'__',能取消嗎
- 请问哪地方有各种数据库下载?ftp or http的?(提供者,应得分)
- 我在dephi中使用MsScript.Ocx 时遇到PsafeArray类型不知如何定义。
- 用new创建对象的困惑
- xml读写问题
- 用delphi组件开发的浏览器无法使用ctrl+c,ctrl+v热键
另外我觉得要实现你的功能
只需要在form的onclosequery里
加句 if table1.State in [dsEdit,dsInsert] then Post;
就行
我想不会是我的索引的问题,因为我不触发combobox1的change事件就可以修改且能更新到后台数据库.
TO jiang5460(巴山夜雨)
不行。
大家顶顶吧!急啊~~~~~~~~~~~~~~~~~