建一个表时,如何让主键值是自动增加的?都可以用哪些方法实现?

解决方案 »

  1.   

    自动增加得不太好吧!我以前试过!不好!还是自己控制的比较好//
    楼上的说得对:在你设计表的结构时//access 。。都有自动增加的类型
      

  2.   

    你是用什么数据库?ACCESS?SQL SERVER?……?
    ACCESS中可以设置这个字段为“自动编号”类型
    SQL SERVER中,设置这个字段数据类型为“int”,“标识”为“是”,“标识种子”和“标识递增量”可以自己设置,一般是不改。
    如果想自己控制,那么把这个字段设为整型字段,在OnNewRecord中,先取这个字段的最大值,然后加1,即可。
      

  3.   

    access有专门的这种类型
    sqlserver叫identi...
      

  4.   

    sqlserver“标识种子”和“标识递增量”怎么理解?
    identity是怎么用的?
      

  5.   

    你的这个表会删除数据吗?如果有建议你不要用。自动编号在数据减少时是不会再从头到尾重新生成的
    如果你要自动编号:建议你使用:
                       table1['字段']=table1.recordcount+1
                          字段必须是INT
    以后数据维护时,可将表中的字段重新生成一次
      

  6.   

    中文版中叫“标识”,英文版中叫“identity"
    在SQL SERVER中想让一个字段成为自动编号字段,那么字段的数据类型必须是tinyint, smallint, int, bigint, decimal(p,0), numeric(p,0).其实就用int就可以了。
    所以,在创建这个字段时,把数据类型设为int,把IDENTITY(中文叫“标识”)设为True,这时,Seed(中文叫“标识种子”)和Increment(中文叫“标识递增量”)自动会可用,其值都为1。这样就可以了。
    标识种子就是从哪个数字开始递增,就是它开始计数的值,它默认是1。
    标识递增量,就是每次增加记录时,它自动增加的数量,默认是1,
    用SQL语句定义字段的话,这个字段可以这样定义:
    AID int IDENTITY(3,2)NOT NULL
    意思是,字段AID,数据类型为INT,为自动编号字段,从3开始计数,每增加一个记录,自动加2。它的值就可能是:3, 5, 7, 9, 11……
    说了这么清楚,应该明白了吧?再不明白的话,就去看看SQL SERVER的帮助
      

  7.   

    如果用的数据库是Oracle的话,可以用Sequence来实现!
    在Access中,你可以自己定义
    在SQL Server中就想上面: i2346(oceanwave) 说的那样拉
      

  8.   

    谢谢i2346(oceanwave) ,明白你的意思了。