在PostgreSQL中,如何插入到只有一个标识列的表中?
例如:在PostgreSQL中,如何插入到只有一个标识列的表中?,sql,postgresql,identity,Sql,Postgresql,Identity,例如: {create table Participant ( id serial, primary key(id) );} 在这种情况下,如何插入到表中 如果您像上面那样创建表 可以通过以下方式使用默认值插入: INSERT INTO Participant values(default); 退房 另一种插入方式是: INSERT INTO Participant values(NEXTVAL('Participant_id_seq')); CREATE TABLE将为序列列Part
{create table Participant ( id serial, primary key(id) );}
在这种情况下,如何插入到表中 如果您像上面那样创建表 可以通过以下方式使用默认值插入:
INSERT INTO Participant values(default);
退房
另一种插入方式是:
INSERT INTO Participant values(NEXTVAL('Participant_id_seq'));
CREATE TABLE将为序列列Participant.id创建隐式序列Participant_id_seq
您可以使用pg_get_serial_sequence函数按以下方式获取表的序列:
pg_get_serial_sequence('Participant', 'id')
它将使用NEXTVAL从序列中获取新值
签出最简单、最便携、最干净的方法是使用默认值,如上所示;IMO应该在nextval方法之前显示,并且更喜欢它。另外,不要忘了可以使用返回,如:插入PARITICIANT值默认返回id;
insert into Participant values (default);