【发布时间】:2017-04-10 00:36:05
【问题描述】:
我正在尝试创建一个系统,我想在其中对数据进行多年排序(使用模式),例如,现在我有一个名为 datos_2016 的模式,然后我创建了一个名为 seq_datos 的序列。
当我尝试创建表datos 并为cdata 设置序列时,它说
“发生错误:错误关系“seq_data”不存在”
但如果我创建“公共”模式,然后在那里创建序列,则不会发生错误(表已成功创建)。
为什么我不能在另一个架构中创建序列?
SQL 代码:
CREATE TABLE datos_2016.data
(
cdata integer NOT NULL DEFAULT nextval('seq_data'),
CONSTRAINT fk_cdata PRIMARY KEY (cdata) USING INDEX TABLESPACE sistema_index
)
WITH (
OIDS = FALSE
)
TABLESPACE sistema_data;
序列码:
CREATE SEQUENCE datos_2016.seq_data
INCREMENT 1
MINVALUE 1
MAXVALUE 9223372036854775807
START 1
CACHE 1;
ALTER TABLE datos_2016.seq_data
OWNER TO postgres;
GRANT ALL ON SEQUENCE datos_2016.seq_data TO public;
GRANT ALL ON SEQUENCE datos_2016.seq_data TO postgres;
【问题讨论】:
标签: postgresql schema sequence