我把delphi与sqlserver连后,在修改某些表时,会出现“键列信息不足或不正确,更新(50分)

  • 主题发起人 主题发起人 cocoy
  • 开始时间 开始时间
C

cocoy

Unregistered / Unconfirmed
GUEST, unregistred user!
我把delphi与sqlserver连后,在修改某些表时,会出现“键列信息不足或不正确,更新
影响的过多的行”提示,但有些表又可以修改。这与没加补丁有关吗?如果与补丁无关,
应该怎么解决啊?
错误发生在下面地方
adoquery1.first;
while not adoquery1.eof do
begin
adoquery1.Edit ;
adoquery1.Fields[j].AsInteger :=list;
i:=i+1;
adoquery1.next;
end;
 

adoquery1.first;
while not adoquery1.eof do
begin
adoquery1.Edit ;
adoquery1.Fields[j].AsInteger :=list;
i:=i+1;
****8 adoquery1.post
adoquery1.next;
end;

试一下
 
表要设主键
 
这种情况我也遇到过,建立索引就可以了。
 
同意彤彤意见
 
表要设主键,而且不能有默认值,这其实是sql server 本身的问题,
可以直接到sql server 表中去试试,当有默认值时,新增一条记录后,
马上去修改,肯定会出错,这问题好象无法解决!
 
修改某些表后表里有完全一样的记录,或数据集里有完全一样的记录。
这个问题我碰到过。
 
我也关注
 
后退
顶部