在 mySQL 我能做到
INSERT INTO table_name (column_name1, column_name2) VALUES('John', 'Doe);
如您所见,我不必提及 ID,我将如何在 postgreSQL 中执行此操作。
谢谢
在 mySQL 我能做到
INSERT INTO table_name (column_name1, column_name2) VALUES('John', 'Doe);
如您所见,我不必提及 ID,我将如何在 postgreSQL 中执行此操作。
谢谢
方法#1: 您可以将您的 ID 列声明为Serial 在这种情况下,它将为您的列创建一个隐式序列。
例子 :
CREATE TABLE MyTable
(
ID serial NOT NULL,
column1 type,
column2 type
}
方法#2: 或者您可以手动定义一个序列,然后将其下一个值指定为列的默认值。
CREATE SEQUENCE my_sequence START 1;
CREATE TABLE MyTable
(
ID integer DEFAULT nextval('my_sequence'::regclass) NOT NULL,
column1 type,
column2 type
}
这不是因为mysql
发生这种情况。您可以进行此类查询,因为您已设置id
为auto_increment
列
您实际上可以通过使用串行伪数据类型在 postgreSQL 中做同样的事情
主列序列示例
id serial PRIMARY KEY,