Sql 有没有办法在Vertica的现有表列上设置AUTO_INCREMENT属性?
假设我有一个简单的表:Sql 有没有办法在Vertica的现有表列上设置AUTO_INCREMENT属性?,sql,vertica,Sql,Vertica,假设我有一个简单的表: CREATE TABLE user( id INT NOT NULL PRIMARY KEY, name VARCHAR(32) NOT NULL, ) 是否有办法更改此表,使id成为自动增量字段 我尝试了以下方法,但没有成功: ALTER TABLE(无此类语法) 创建另一个具有自动增量ID的表,并从原始表复制数据(由于错误而无法工作:无法插入或更新标识/auto_increment列“ID”) 谢谢 我会尝试对行进行排序,并在以后的插入中使用序列 我们得
CREATE TABLE user(
id INT NOT NULL PRIMARY KEY,
name VARCHAR(32) NOT NULL,
)
是否有办法更改此表,使id
成为自动增量字段
我尝试了以下方法,但没有成功:
- ALTER TABLE(无此类语法)
- 创建另一个具有自动增量ID的表,并从原始表复制数据(由于错误而无法工作:无法插入或更新标识/auto_increment列“ID”)
谢谢 我会尝试对行进行排序,并在以后的插入中使用序列 我们得到: id | val ----+----- 1 | a 3 | c 2 | b 4 | d id | val ----+----- 4 | d 2 | b 3 | c 6 | f 1 | a 5 | e 快速测试:
INSERT INTO t2 (val) VALUES ('e');
INSERT INTO t2 (val) VALUES ('f');
SELECT * FROM t2;
我们得到:
id | val
----+-----
1 | a
3 | c
2 | b
4 | d
id | val
----+-----
4 | d
2 | b
3 | c
6 | f
1 | a
5 | e
id | val
----+-----
4 | d
2 | b
3 | c
6 | f
1 | a
5 | e
希望这有帮助