为inventory表添加外键:Cid,Pid,分别引用company表中Cid和product表中Pid。 A ALTER TABLE inventory ADD CONSTRAINT fk1 PRIMARY KEY(Cid) REFERENCES company(Cid), ADD CONSTRAINT fk2 PRIMARY KEY(Pid) REFERENCES product(Pid); B ALTER TABLE inventory ADD CONSTRAINT fk1 FOREIGN KEY(Cid) REFERENCES company(Cid), ADD CONSTRAINT fk2 FOREIGN KEY(Pid) REFERENCES product(Pid); C ALTER TABLE inventory ADD CONSTRAINT fk1 FOREIGN KEY(Pid) REFERENCES company(Pid), ADD CONSTRAINT fk2 FOREIGN KEY(Cid) REFERENCES product(Cid); D ALTER TABLE inventory ADD CONSTRAINT fk1 PRIMARY KEY(Pid) REFERENCES company(Pid), ADD CONSTRAINT fk2 PRIMARY KEY(Cid) REFERENCES product(Cid);
时间: 2023-06-15 21:02:57 浏览: 80
B ALTER TABLE inventory ADD CONSTRAINT fk1 FOREIGN KEY(Cid) REFERENCES company(Cid), ADD CONSTRAINT fk2 FOREIGN KEY(Pid) REFERENCES product(Pid); 是正确的做法,因为外键应该是对应着被引用表的主键,而不是外键自己作为主键。在这个情况下,Cid和Pid应该分别对应着company表和product表的主键。因此,应该使用B选项。
相关问题
利用alter table命令为score表中添加主键 “考号+科目号”,并创建外键 fk_ex_s,参照examinee表的考号
可以使用如下的 SQL 语句为 score 表添加主键和外键:
```
-- 添加主键
ALTER TABLE score ADD PRIMARY KEY (exam_no, subject_no);
-- 添加外键
ALTER TABLE score ADD CONSTRAINT fk_ex_s
FOREIGN KEY (exam_no)
REFERENCES examinee(exam_no);
```
这里假设 score 表中的考号字段为 exam_no,科目号字段为 subject_no,examinee 表中的考号字段也为 exam_no。执行上述 SQL 语句后,score 表将会创建一个名为 pk_exam_subject 的主键,由 exam_no 和 subject_no 两个字段组成;同时,也会创建一个名为 fk_ex_s 的外键,参照 examinee 表的 exam_no 字段。
学生表中的class id字段作为外键和班级表中的cid进行关联代码
以下是使用MySQL语句创建学生表和班级表的代码示例,其中包含了将学生表中的class_id字段作为外键与班级表中的cid字段进行关联的代码:
```
CREATE TABLE class (
cid INT PRIMARY KEY,
class_name VARCHAR(50) NOT NULL
);
CREATE TABLE student (
sid INT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
age INT NOT NULL,
class_id INT,
FOREIGN KEY (class_id) REFERENCES class(cid)
);
```
在这个示例中,class表中的cid字段是主键,而student表中的class_id字段是外键,通过FOREIGN KEY关键字和REFERENCES子句将它与class表中的cid字段进行关联。这样,当我们查询学生表时,可以通过class_id字段的值来获取与之关联的班级信息。