Cam*_*ins 4 postgresql constraints unique database-migration
我非常热情地阅读了一篇名为" 从Linux迁移到PostgreSQL(Kubuntu)"的问题.在星球大战主题使得它是更加有趣.但是我遇到了PostgreSQL中有关Unique Constraints的问题.
我紧跟上面的帖子,用sqlt创建一个PostgreSQL DDL .思考过程首先创建模式/表,然后导入数据.但是我的72个表中有57个使用了CONSTRAINT "userid" UNIQUE ("user_id", "key")
以下是其中一个表的示例:
CREATE TABLE "account_otherserviceinfo" (
"id" serial NOT NULL,
"user_id" bigint NOT NULL,
"key" character varying(50) NOT NULL,
"value" text NOT NULL,
PRIMARY KEY ("id"),
CONSTRAINT "user_id" UNIQUE ("user_id", "key")
);
Run Code Online (Sandbox Code Playgroud)
当我使用pgadmin3中的查询工具将这些表复制到我的PostgreSQL数据库时,我收到以下错误:
错误:关系"user_id"已存在SQL状态:42P07
我没有设计这个数据库架构.我只是在帮助迁移过程.阅读有关唯一约束的文档时,只要它位于不同的表中,就可以使用相同的名称.http://www.postgresql.org/docs/8.3/static/ddl-constraints.html.我误解了这个吗?
任何建议或指示将不胜感激.
谢谢!
PS:感谢/sf/users/4136121/和/sf/users/1857411/让我这么远;-)
阅读有关唯一约束的文档时,只要它位于不同的表中,就可以使用相同的名称.
我不确定你正在阅读的文档的哪一部分,但你误解了它.约束名称必须是全局唯一的.所以你可以随心所欲地拥有这些UNIQUE ("user_id", "key"),但你无法为每一个命名"user_id".
| 归档时间: |
|
| 查看次数: |
3529 次 |
| 最近记录: |