我有一个 posgreSQL 数据库,我正在使用 pgAdmin III 来处理它。我创建了一个名为 primaryKeySequence 的序列。
现在我想将此序列用作表中主键字段的默认值。我试图插入
nextval('primaryKeySequence');
进入 pgAdmin 中的默认值文本字段。当我单击“确定”按钮时,会出现一条错误消息,并指出该序列不存在。
正确的方法是什么?
我有一个 posgreSQL 数据库,我正在使用 pgAdmin III 来处理它。我创建了一个名为 primaryKeySequence 的序列。
现在我想将此序列用作表中主键字段的默认值。我试图插入
nextval('primaryKeySequence');
进入 pgAdmin 中的默认值文本字段。当我单击“确定”按钮时,会出现一条错误消息,并指出该序列不存在。
正确的方法是什么?
知道了。看看这里:http ://pgadmin.org/docs/1.4/pg/functions-sequence.html序列名称必须像这样引用,nextval('"primaryKeySequence"')
因为它不是小写的
除非您使用“”,否则 PostgreSQL 会将标识符小写。所以试试:
nextval('主键序列')
另外,你做错了。请改用 Serial/BigSerial。