[英]How to fix MySQL error code 1064 with foreign key
CREATE TABLE IF NOT EXISTS lineitem (
line_no INT(11) NOT NULL,
line_invoiceId INT(11) FOREIGN KEY REFERENCES invoice(inv_id) NOT NULL,
line_productId INT(11) FOREIGN KEY REFERENCES products(id) NOT NULL,
line_price DECIMAL(10,2) NOT NULL,
PRIMARY KEY (line_no, line_invoiceId)
);
错误代码 1064
删除FOREIGN KEY
。 您在这里使用的是缩写语法,而不是完整的 SQL 语法用于外键约束。
例如:
create table invoice (inv_id int(11) primary key not null);
create table products (id int(11) primary key not null);
CREATE TABLE IF NOT EXISTS lineitem (
line_no INT(11) NOT NULL,
line_invoiceId INT(11) NOT NULL REFERENCES invoice(inv_id),
line_productId INT(11) NOT NULL REFERENCES products(id),
line_price DECIMAL(10,2) NOT NULL,
PRIMARY KEY (line_no, line_invoiceId)
);
请参阅SQL 小提琴。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.