如何解决在 PostgreSQL 11.0 中的表中创建外键时出错
我正在 Postgresql 11.0 中创建下表
create table rshar.drug_source as
select * from dblink('dbname=aa port=aa host=aa user=read password=aa','
select
*
from
prod.drug_source
;
'
) as x ( id BIGINT,db CHaraCTER varying,original_id CHaraCTER varying,mapped_by CHaraCTER varying,dataset_version_id BIGINT,CONSTRAINT drugsource_fk1 FOREIGN KEY(id,dataset_version_id) REFERENCES drug_tbl (id,dataset_version_id)
;
我收到以下错误:
[Code: 0,sql State: 42601] ERROR: Syntax error at or near "CONSTRAINT"
Position: 547 [Script position: 4147 - 4157]
我不知道“CONSTRAINT”附近的语法错误是什么
非常感谢任何帮助。
解决方法
您不能创建带有约束的表并将其填充到单个 SQL 语句中。分两步做:
CREATE TABLE rshar.drug_source (
col1 type1,...
CONSTRAINT ...
);
INSERT INTO rshar.drug_source
SELECT * from dblink(...);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。