表A(id int indentity(1,1) primary key ;sort int )
希望插入时sort 自动增加一,相当于自增长字段

解决方案 »

  1.   

    --id自增?
    indentity
    -->
    identitycreate table A(id int identity(1,1) primary key ,sort int )
      

  2.   

    相当于自增就可以,比如插入记录时。
    id  值 则sort值sort 
    1               2
    2               3
    4               4
    6               5
    9               6只要是sort增加就可以了
      

  3.   

    只要是sort值递增就可以了,不一定要求是按一增加。
    sort
     1
     3
     5
    8
    20
      

  4.   

    能不能使sort 值直接等于id值呢
      

  5.   

    --设置计算列
    create table A(id int identity(1,1) primary key ,sort as id, 字段1 varchar(100))
      

  6.   

    declare @tmp int
    select top 1 @tmp=id from A order by id desc
    set @tmp=@tmp+1
      

  7.   

    --设置计算列
    create table A(id int identity(1,1) primary key ,sort as id, 字段1 varchar(100))这样之后能不能,让sort 列更新?
      

  8.   

    使用sort as id后sort就变成公式列了.公式列是不能被更新的.楼主的意思好像希望sort列自动更新.如果这样就应该创建INSERT触发器,只有触发器才能自动完成.例如
    create trigger tri_insert on mytable 
    for insert
    as
    update a set sort = i.id from mytable a,inserted i where a.id = i.id
      

  9.   

    楼上正解
    create table one(id int identity(1,1) primary key ,sort int)
    go
    create trigger oneadd on one for inserted as
    update one set sort=id from one,inserted where one.id=inserted.id