【问题标题】:foreign key and primary key error外键和主键错误
【发布时间】:2009-10-23 10:22:01
【问题描述】:

根据我们上次关于重复发票编号的讨论。并且您建议的代码如下:

create table Invoice
(
    companyID int,
    invno varchar(50),
    primary key (companyID,Invno)
)

工作正常。

但另一个表是 invcarat 相同的字段如下:

companyID(int)          invno(varchar)
------------------------------------------------------

现在我必须在 invcarat(invno) 上创建外键,但在创建“参考表发票上的主键不存在”的外键时发生错误。虽然我已经在上面创建了发票上的主键。

请回复如何生成两个表之间的关系。

提前致谢。

【问题讨论】:

    标签: sql foreign-key-relationship


    【解决方案1】:

    外键应该在invcarat (companyID, invno) 上并且应该引用invoice (companyID, invno)invno 列本身不是主键,因此您不能将其用作外键目标。您可以在其上创建一个唯一键,但您也可以只更改主键。

    【讨论】:

      猜你喜欢
      • 2011-01-23
      • 1970-01-01
      • 2011-09-28
      • 1970-01-01
      • 2020-07-07
      • 2023-03-14
      • 1970-01-01
      • 2013-05-12
      相关资源
      最近更新 更多