我正在使用Sybase ASE16.0数据库,在该数据库中,我试图更改现有USER表中的列,以便每次向表中添加一行时它都会自动递增。列:user_id设置为主键,不为null。
我已经阅读了许多sybase教程,并尝试了许多方法,但无济于事。这是我为更改而写的一些查询:
ALTER TABLE USER (user_id smallint IDENTITY not null)
ALTER TABLE USER ALTER user_id smallint IDENTITY not null
ALTER TABLE USER MODIFY user_id smallint NOT NULL IDENTITY
ALTER TABLE USER MODIFY user_id smallint NOT NULL AUTO_INCREMENT
ALTER TABLE USER MODIFY user_id smallint NOT NULL AUTOINCREMENT
ALTER TABLE USER ALTER user_id smallint NOT NULL AUTOINCREMENT
ALTER TABLE USER user_id smallint AUTOINCREMENT
我希望符合SYBASE DB的查询会在添加新记录时更改表中的user_id列以使其自动递增1
答案 0 :(得分:1)
摘自文档:
将IDENTITY列添加到表中。对于表中的每个现有行,Adaptive Server都会分配一个唯一的连续列值。 IDENTITY列的类型可以是数字或整数,并且标度为零。精度确定可以插入到列中的最大值(10 5 -1或99,999):
alter table sales_daily
add ord_num numeric (5,0) identity
找到了here