为什么我无法删除数据!(急!对有些人可能是小问题!100分)(100分)

  • 主题发起人 主题发起人 sgs125
  • 开始时间 开始时间
S

sgs125

Unregistered / Unconfirmed
GUEST, unregistred user!
我用的是dbexpress 后台是db2/400
代码是
SimpleDataSet1.Delete;
SimpleDataSet1.ApplyUpdates(0);
就报错,说是
unable to find record,NO key specified
 
是你的数据表没有主键吧?设一个Primary Key
 
用TSQLQuery执行SQL语句来删除,看它还不死?和数据库没有关系的。
 
to
delphiland 有主键
to
Sachow 兄弟我是用dbexpress
 
没有主键,或有完全相同的记录吧
 
找不到你要删除的记录!在删除时你看看当前记录是不是存在,另外打开的数据库不能是只读的
 
to everyone
我的数据库连接应该是没有问题,数据库应该也没有问题
我用ado连接的时候一切正常
只是我用的dbexpress连接就出现上述错误
 
TSQLQuery不就是dbExpress里的控件吗?没用过?
你如果更愿意用TSQLDataSet,赋给它的CommandText以SQL语句,然后用ExecSQL执行也一样啊。
 
to Sachow
sorry 我看错了,但是我现在必须使用SimpleDataSet1
没有办法,能不能帮忙看看
 
我没有DB2,没法帮你试呀。但是经验告诉我用SQL语言进行数据操作是最直接有效的方法
(虽然可能会多写一些代码),没有理由说删除记录只能调用DataSet.Delete方法的。
如果事情很急,又没有把握马上熟悉dbExpress的话,还用原来的ADO不是很好吗。
 
to Sachow
db2/400的ado速度太慢了,我打开一个表(二万数据)居然要20秒..
 
SimpleDataSet1.Delete;
SimpleDataSet1.ApplyUpdates(0);
我估计是你的上一次操作后没有刷新dataset.
检查以前的操作是否有SimpleDataSet1.ApplyUpdates(0);
 
多人接受答案了。
 
后退
顶部