在 h2 中定义复合主键

Posted

技术标签:

【中文标题】在 h2 中定义复合主键【英文标题】:Defining a composite primary key in h2 【发布时间】:2013-09-30 18:04:46 【问题描述】:

如何指定一个表有多个构成主键的列?当我运行这个 sql 语句时,我得到“未知数据类型”(“

CREATE TABLE SH_LEAGUE_CONTACT_TEAM_ROLE(ROLE_NAME VARCHAR NOT NULL,
TEAM_ID INT NOT NULL,
CONTACT_ID INT NOT NULL,
FOREIGN_KEY(TEAM_ID) REFERENCES SH_LEAGUE_TEAM(ID),
FOREIGN_KEY(CONTACT_ID) REFERENCES SH_LEAGUE_CONTACT(ID),
PRIMARY KEY(ROLE_NAME, TEAM_ID, CONTACT_ID));

【问题讨论】:

【参考方案1】:

您的陈述中有错字,您使用了FOREIGN_KEY(一个字)而不是FOREIGN KEY(两个字)。

【讨论】:

以上是关于在 h2 中定义复合主键的主要内容,如果未能解决你的问题,请参考以下文章

如果自动增量字段不是第一个,jOOQ 可以支持复合主键吗

如何在 SQL 中定义复合主键?

Laravel中定义复合主键

Cassandra 中使用复合主键的慢插入时间

联结表中的复合主键 - Sequelize

仅在主表上作为复合主键