【发布时间】:2016-09-03 19:39:03
【问题描述】:
我运行以下查询以在 MS SQL Server 中创建表:
CREATE TABLE menus
(
menu_id int NOT NULL PRIMARY KEY,
menu_name char,
other_details char
)
CREATE TABLE bookings
(
booking_Id int NOT NULL PRIMARY KEY,
date_booked DATE,
date_of_booking DATE,
other_details char,
staff_id int FOREIGN KEY REFERENCES staff(staff_id),
customer_id int FOREIGN KEY REFERENCES customers(customer_id)
)
CREATE TABLE menus_booked
(
menu_id INT NOT NULL,
booking_id INT NOT NULL,
CONSTRAINT PK_menus_booked PRIMARY KEY(menu_id,booking_id),
FOREIGN KEY (menu_id) REFERENCES menus(menu_id),
FOREIGN KEY (booking_id) REFERENCES bookings(booking_id)
)
CREATE TABLE menu_changes
(
change_id int NOT NULL PRIMARY KEY,
menu_id int NOT NULL,
booking_id int NOT NULL,
change_details char,
FOREIGN KEY (menu_id) REFERENCES menus_booked(menu_id),
FOREIGN KEY (booking_id) REFERENCES menus_booked(booking_id)
)
在运行最后一个查询时出现错误:
被引用表“menus_booked”中没有与外键“FK_menu_chan_menu”中的引用列列表匹配的主键或候选键
我不确定我的查询是否正确并且无法解决此错误。
【问题讨论】:
-
在前3个表中输入一些数据,然后执行最后的create table语句@Imraan
标签: sql sql-server foreign-keys ddl create-table