如果表中已存在数据,如何在现有列上设置标识约束 - sybase ase 15.5

时间:2016-02-17 12:54:56

标签: database sybase-ase

我有一张表已经包含了许多记录。该表有一个名为'id'的整数类型的列,我已经在id列中为表中的所有记录插入了唯一值。

现在我需要在'id'列上设置IDENTITY约束,以便在添加到表中的任何新记录中,id列的值自添加到添加到列的最后一个值时自动递增。

表的create table查询如下:

create table Table1 (
    Column1                         varchar(255)                     not null,
    Column2                         varchar(254)                     not null,
    Column3                         int                              not null,
    id                              int                              ,
 PRIMARY KEY CLUSTERED ( id )  on 'default' 
)

我使用以下查询将数据插入表中:

Insert into Table1 (Column1, Column2, Column3, id) values("abc","def",12,1)

但是当我尝试在我的sybase数据库上执行以下Alter表查询时,它会返回错误“IDENTITY'附近的语法错误”

ALTER TABLE Table1 MODIFY id int IDENTITY DEFAULT AUTOINCREMENT NOT NULL

有人能指出我正确的方向,如何对已有数据的列应用IDENTITY约束?

0 个答案:

没有答案