我一直在尝试在表上创建外键来引用价格表,这是我到目前为止的语法,它会产生错误,
CREATE TABLE shirts(
shirt_id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
shirt_name VARCHAR(100) NOT NULL,
shirt_type VARCHAR(10) NOT NULL,
shirt_size VARCHAR(20) NOT NULL,
qp_price NUMERIC(6,2) FOREIGN KEY REFERENCES price_list.price ON price_list.price_id=shirts.qp_price NOT NULL,
o_price NUMERIC(6,2) FOREIGN KEY REFERENCES price_list.price ON price_list.price_id=shirts.o_price NOT NULL,
clr_options VARCHAR(30) NULL,
qty NUMERIC(5,0) NULL
)ENGINE=INNODB
“价格表”有3列,分别是price_id、price_cat和price。我想要衬衫表中的 qp_price 和 o_price 列做的是根据我在衬衫表上这些列中输入的数字显示 price_list 表的价格列。例如,
如果我做
INSERT INTO shirts(shirt_name,shirt_type,shirt_size,qp_price,o_price)VALUES
('Crewneck Tee','Men','S','1','2'),
('Crewneck Tee','Men','M','1','2'),
('Crewneck Tee','Men','L','1','2'),
('Crewneck Tee','Men','1X','1','2'),
('Crewneck Tee','Men','2X','3','4'),
('Crewneck Tee','Men','3X','5','6'),
('Crewneck Tee','Men','4X','7','8'),
('Crewneck Tee','Men','5X','9','10')
SL 圆领 T 恤将在价格列的第一行和第二行显示价格,因为它链接到 price_list 表上的 price_id 列......我该怎么做?