SQL SERVER里的一个字段是标识字段,设置为自动加一,但用程序添加记录时却要求给此字段付值,该如何处理???

解决方案 »

  1.   

    如果你搞成自动加1的话,添加记录是不能给此字段赋值的。
    如果非要给这个字段加1,又要给他赋值,可是取消SQL本身对他加1的功能
    然后用SQL语句实现,每次添加进行如下处理,返回本次ID即可
    select isnull(max(id),0)+1 as a from Table1;
    curid:=FieldByname('a').asinteger;
    insert into Table1(id,...)values(inttostr(curid)....)
    这就行了啊
      

  2.   

    可能是:
    SQL SERVER 中库结构未定义好,在定义库结构时候应将ID字段的识别打钩,识别种子填写一初始市值如100000等,增量为1。
    在delphi的字段编辑器中这个字段如果能不出来最好不要添加出来。
      

  3.   

    ID字段 在识别一栏选是,种子是1增量为1,而且在添加记录时没涉及到这个字段,可程序一运行抱错说 ID字段要有一个值