图像反映了预期的结果。我正在尝试使用Microsoft SQL Server 2016 Management Studio定义 product_translation 表复合主键与表产品和语言中的PK之间的关系。当我尝试定义product_translation复合PK和产品PK之间的关系时,我得到一个错误:
关系的两边必须具有相同的列数
这是有道理的但是向导不允许我选择匹配来自两个不同表格的复合PK 所需的两个PK ,这是当前的情况。
由于已经设置了所有三个表,是否有允许我设置所需关系的ALTER语句?
答案 0 :(得分:0)
只需删除表product_translation ..请确保您先没有任何数据。然后按如下方式添加代码。
CREATE TABLE [product_translation] ( PRIMARY KEY CLUSTERED(product_non_transid,language_id), FOREIGN KEY(product_non_transid)参考[产品](Id)ON更新删除CASCADE上的操作, FOREIGN KEY(language_id)REFERENCES [语言](Id)ON更新删除CASCADE上的操作, product_name Varchar2(100), 描述Varchar2(500) )