1、SQLServer2000数据库+D6开发环境。
我想用TADOQuery的ltBatchOptimistic来批更新操作的数据。
可是我在执行UpdateBatch(arAll)方法的时候,为什么总是提示:
“无法更新行集定位:一些值可能已在最后读取后改变”我的表结构大致如下:
TableName: kc_GdSheetDetail
FieldName:
SheetCode:string[20] is not null ,primary key
gdCode:string[20] is not null ,primary key
......
.........
我把上面的SheetCode(外键)+gdCode作为这张表的主键。请问我该如何处理这种错误阿? 我又把主键用一个ID的自动增量来试了一下同时
ADOQuery1的相关属性为: ADOQuery1.CursorType:=ctStatic;
ADOQuery1.CursorLocation:=clUseClient;
ADOQuery1.LockType:=ltOptimistic;
这样不应该再出现上面的错去了呀。可是我插入数据的时候还是存在!
这种错误好像就是与索引或是主键有关系!但是不知道怎么解决!
我想用TADOQuery的ltBatchOptimistic来批更新操作的数据。
可是我在执行UpdateBatch(arAll)方法的时候,为什么总是提示:
“无法更新行集定位:一些值可能已在最后读取后改变”我的表结构大致如下:
TableName: kc_GdSheetDetail
FieldName:
SheetCode:string[20] is not null ,primary key
gdCode:string[20] is not null ,primary key
......
.........
我把上面的SheetCode(外键)+gdCode作为这张表的主键。请问我该如何处理这种错误阿? 我又把主键用一个ID的自动增量来试了一下同时
ADOQuery1的相关属性为: ADOQuery1.CursorType:=ctStatic;
ADOQuery1.CursorLocation:=clUseClient;
ADOQuery1.LockType:=ltOptimistic;
这样不应该再出现上面的错去了呀。可是我插入数据的时候还是存在!
这种错误好像就是与索引或是主键有关系!但是不知道怎么解决!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货