两列 auto_increment

two columns with auto_increment

我希望我的 table 看起来像这样,只输入评论值:

ID ID2 Comment
1  1   Hi!
2  2   Hi!

你没有提到你的数据库,所以这个答案解决了一般问题。

大多数数据库支持每个 table 一个标识列。 [我知道的] 唯一支持多个标识列的数据库是 PostgreSQL。 PostgreSQL 万岁!

这是一个例子:

create table t (
  id1 int generated always as identity,
  id2 int generated always as identity,
  comment varchar(50)
);

insert into t (comment) values ('Hi Anna');
insert into t (comment) values ('Hi Peter');

select * from t;

结果:

id1  id2  comment
---  ---  --------
  1    1  Hi Anna 
  2    2  Hi Peter

请注意,默认情况下它们都从 1 开始,但每一代都可以有不同的参数。即,他们可以从不同的起点、不同的极限、不同的周期等开始。