您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> Delphi >> 奇怪,更新数据库发生的错误,请大家帮忙。

奇怪,更新数据库发生的错误,请大家帮忙。

来源:网络整理     时间:2016/8/23 19:30:08     关键词:

关于网友提出的“ 奇怪,更新数据库发生的错误,请大家帮忙。”问题疑问,本网通过在网上对“ 奇怪,更新数据库发生的错误,请大家帮忙。”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 奇怪,更新数据库发生的错误,请大家帮忙。
描述:

我这里sql server上有个表有40多万行记录,可原先没有记录号,
此表打算只用于查询,因此我自己建了一个int型字段,希望顺序
写入记录号,首先用adotable打开该表,取出所有记录,然后将
顺序号写入,结果出错。
procedure xxx
var 
  icurno: integer;
begin
  icurno := 1;
  adotable1.First;
  adotable1.Edit;
  while not adotable1.Eof do
  begin
    adotable1.FieldByName('recordid').AsInteger := icurno;
    icurno := icurno + 1;
    adotable1.MoveBy(1);
  end;
  adotable1.Post;
end;
结果执行到adotable1.MoveBy(1)时,就看到硬盘灯狂闪,没有执行
下一次循环(用adotable1.next也不行)打开表,结果所有的记录该
字段都写了1,而不是顺序写入。
请大家帮忙。


解决方案1:

最简单了,用SQL语句就可以搞定:
1、创建一个字段为int型自动递增字段,alter table xxx add columnname int identity constraint fk_xxx primary key...
2、创建完后可以根据需要将字段类型的自动递增字段的自动递增属性去掉,alter table...
不要忘了用TADOQuery,激活时用ADOQuery.ExecSQL;
比你那中方法快多了吧,交给服务器就完了!
好好学学SQL吧!


以上介绍了“ 奇怪,更新数据库发生的错误,请大家帮忙。”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3534665.html

相关图片

相关文章