我有一个posgreSQL数据库,我使用pgAdmin III来处理它。我创建了一个名为primaryKeySequence的序列。如何通过pgAdmin将序列设置为默认值?
现在我想使用此序列作为表中主键字段的默认值。我试图将
nextval('primaryKeySequence');
插入到pgAdmin中的默认值textfield中。当我点击'确定'按钮时出现一条错误消息,并说,序列不存在。
什么是正确的做法?
我有一个posgreSQL数据库,我使用pgAdmin III来处理它。我创建了一个名为primaryKeySequence的序列。如何通过pgAdmin将序列设置为默认值?
现在我想使用此序列作为表中主键字段的默认值。我试图将
nextval('primaryKeySequence');
插入到pgAdmin中的默认值textfield中。当我点击'确定'按钮时出现一条错误消息,并说,序列不存在。
什么是正确的做法?
明白了。看看这里:http://pgadmin.org/docs/1.4/pg/functions-sequence.html序列名必须像这样引用nextval('"primaryKeySequence"')
,因为它不是小写字母
PostgreSQL将小写标识符,除非你“”。因此,尝试:
NEXTVAL( 'primarykeysequence')
而且,你做错了。改用Serial/BigSerial。
明白了。看看这里:http://www.pgadmin.org/docs/1.4/pg/functions-sequence.html序列号必须像这个引用nextval('“primaryKeySequence”'),因为它不是小写 – c0d3x 2010-02-14 15:27:36
你应该改变这个,以便你的“评论”是一个“答案”,然后接受它! – Timothy 2010-02-16 13:41:55