Sql 生成外键并将其转换为一个复合主键
我在创建office表时遇到问题。我在office表中创建了外键,然后将它们转换为复合主键。这是我可以做的还是有其他方法连接此表?您可以这样做,但只要将两个字段都保留为外键就足以连接到Office表 你真的应该为办公室创建一个单独的id,无论经理id是什么,或者办公室搬到附近的城市/城镇,id都将保持不变Sql 生成外键并将其转换为一个复合主键,sql,Sql,我在创建office表时遇到问题。我在office表中创建了外键,然后将它们转换为复合主键。这是我可以做的还是有其他方法连接此表?您可以这样做,但只要将两个字段都保留为外键就足以连接到Office表 你真的应该为办公室创建一个单独的id,无论经理id是什么,或者办公室搬到附近的城市/城镇,id都将保持不变 create table Manager ( manager_id Integer(4) constraint manager_id_pk PRIMARY KEY(ma
create table Manager
(
manager_id Integer(4)
constraint manager_id_pk PRIMARY KEY(manager_id),
DateOfBirth Integer(10),
Salary Integer(20),
SEX varchar(10),
Contact Integer(10),
);
create table Regional_Manager
(
manager_id Integer(4)
constraint manager_id_fk References Manager(manager_id),
DateOfBirth Integer(10),
Salary Integer(20),
SEX varchar(10),
Contact Integer(10),
Off_Address varchar(30)
constraint Off_Address_fk References Office(Off_Address),
city_id integer(4)
constraint city_id_fk References City(city_id)
);
create table Operational_Manager
(
manager_id Integer(4)
constraint manager_id_fk References Manager(manager_id),
DateOfBirth Integer(10),
Salary Integer(20),
SEX varchar(10),
Contact Integer(10),
department_id Integer(4)
constraint department_id_fk References Department(department_id),
DateOfBirth Integer(10),
);
create table Office
(
Off_Address varchar(30),
num_rooms Integer(10),
num_floors Integer(10)
city_id Integer(10),
manager_id Integer(4)
constraint manager_id_fk References Manager(manager_id),
city_id Integer(10),
constraint city_id_fk References City(city_id),
PRIMARY KEY(manager_id,city_id)
);
评论不用于扩展讨论;这段对话已经结束。
create table Office(
Off_id Integer(4),
Off_Address varchar(30),
num_rooms Integer(10),
num_floors Integer(10)
city_id Integer(10),
manager_id Integer(4)
constraint manager_id_fk References Manager(manager_id),
city_id Integer(10),
constraint city_id_fk References City(city_id),
PRIMARY KEY(Off_id)
);