create table table1 (编号 bigint identity(1,1) not null)

解决方案 »

  1.   

    不好意思,可能是我没有表达清楚,我的意思是,我事先已经通过
       create table table1 (编号 bigint not null,......)创建了一个表,
    现在希望用‘Alter Table column 编号 bigint identity (1,1) not null’语句修改‘编号’字段的属性
       但是,系统老是提示:在关键字 'IDENTITY' 附近有语法错误。
       请问如何解决这个语法错误!
      

  2.   

    ALTER TABLE table2 DROP COLUMN 编号 
    go
    ALTER TABLE table2 ADD 编号 bigint identity(1,1) not null
    go
      

  3.   

    有数据的话
    ALTER TABLE 表 ADD 编号1 bigint identity(1,1) not null
    go
    SET IDENTITY_INSERT 表 ON
    go
    update tablename set 编号1=编号
    go
    SET IDENTITY_INSERT 表 OFF
    go
    ALTER TABLE 表 DROP COLUMN 编号 
    go
    exec sp_rename '表.编号1','编号'
    go
      

  4.   

    按第二种,只要一的数据没有null和不规则数据就
      

  5.   

    ALTER TABLE 表 ADD 编号1 bigint identity(100,1) not null
    ----------------------------------------^^^从100开始
      

  6.   

    多谢:)
      但是,在下还有一个问题:
      请问对含有IDENTITY字段表格数据进行备份/恢复操作时,都有那些好办法。
      分数不够可以另加:)
      

  7.   

    delphi:)
      我开始的想法是通过:XML文件的形式来备份数据,但在恢复时碰到了我刚才向你请教的问题,难以控制。
      
      恳请高手指点
      

  8.   

    你是想导出吗??
    通过ClientDataSet1可以savetoFile为XML
      

  9.   

    不是的:)
      对于如何将XML恢复到数据库,我不是很清楚。
      关键是在恢复时我不知道如何能够将XML中的数据不变的导入表中,(注意:表中可能有个X字段的属性为IDENTITY),然后,在恢复完以后,新添加记录的X字段能够在原表最后一条记录编号的基础上继续自动加1;
      

  10.   

    SET IDENTITY_INSERT 表 ON
    go
    SET IDENTITY_INSERT 表 OFF
    go看看help吧!我要吃饭去了!