解决方案 »

  1.   

    @@IDENTITY 可以得到当前表中的自增长列
      

  2.   

    如果你只是生成一次,完全可以等数据都插入完毕的时候执行一个update,没必要每插入一条数据就生成一次
    或者等你程序从数据库读出来,再拼接成字符串显示,这东西既然每个数据数据表里都已经有了,再增加一列到底用来干嘛?
      

  3.   

    如果你只是生成一次,完全可以等数据都插入完毕的时候执行一个update,没必要每插入一条数据就生成一次
    或者等你程序从数据库读出来,再拼接成字符串显示,这东西既然每个数据数据表里都已经有了,再增加一列到底用来干嘛?因为要在程序中得到 省 市 地区(存储的int型的数据) 的首字母+自增id来生成一个编码。。
      

  4.   

      @@identity  不好用  查询出来还要+1 才是生成的id   没搞清楚啥情况
    最后用的 IDENT_CURRENT ('table_name))
      

  5.   

    我现在的方案。
    create procedure P_InsertCSID
    @Name varchar(200),
    @Tel varchar(200),
    @Province int,
    @City int,
    @Area int,
    @Address varchar(200),
    @CA varchar(200)
    as
    insert into T_CSID(Name, Tel, Province, City, Area, Address, CSID) 
    values(@name,@Tel,@Province,@City,@Area,@Address,@CA +CONVERT(varchar(200),  IDENT_CURRENT ('T_CSID')))