我创建了一些 SQL 代码来创建基于 ERD 的 7 个表。
它似乎非常接近工作,除了它说
外键约束中引用的列“inv_no”不存在
但是,创建了 inv_no 所在的表 invoice,并且具有 inv_no 列,所以我很困惑如何创建需要 inv_no 作为外键的其他表 invoiceLine 是不存在的。
这是我的代码:
CREATE TABLE invoice(
inv_no INTEGER NOT NULL,
cust_id INTEGER NOT NULL,
inv_date DATE NOT NULL,
CONSTRAINT PK_invoice_inv_no PRIMARY KEY(inv_no),
CONSTRAINT FK_customer_cust_id FOREIGN KEY(cust_id) REFERENCES customer(cust_id)
);
CREATE TABLE invoiceLine(
inv_line_no INTEGER NOT NULL,
inv_line_qty INTEGER NOT NULL,
CONSTRAINT PK_invoiceLine_inv_line_no PRIMARY KEY(inv_line_no),
CONSTRAINT FK_invoice_inv_no FOREIGN KEY(inv_no) REFERENCES invoice(inv_no)
);
同样,有问题的表是 invoiceLine,它似乎依赖于 invoice 表中的 inv_no。
如果有人能发现我的错误,那就太好了!