在st_2中建立Course_2表,并按照course表设置课程号、课程名、先行课及学分。其中先行课参照课程号,课程名取唯一值。再在st_2中建立SC_2表,并按照SC设置学号、课程号及成绩。成绩限制在0~100分之间;Sno参照student_2表sno,并进行删除级联设置和更新级联设置;cno参照Course_2表cno,并进行更新级联设置和拒绝删除设置。
时间: 2024-02-24 17:57:51 浏览: 72
MySQL-Short-Course.zip_4 3 2 1_MYSQL_course_html+mysql_php mysql
好的,您的问题是如何在st_2中建立Course_2表和SC_2表,并按照要求设置参照和限制?
对于建立Course_2表,您可以使用以下的SQL语句:
```
CREATE TABLE Course_2 (
cno INT PRIMARY KEY,
cname VARCHAR(50) UNIQUE,
prerequisite INT REFERENCES Course_2(cno),
credit INT
);
```
这个表包含四个列,分别是课程号(cno)、课程名(cname)、先行课(prerequisite)和学分(credit)。其中,课程号是主键,课程名是唯一值,先行课参照课程号。
对于建立SC_2表,您可以使用以下的SQL语句:
```
CREATE TABLE SC_2 (
sno INT REFERENCES student_2(sno) ON DELETE CASCADE,
cno INT REFERENCES Course_2(cno) ON UPDATE CASCADE ON DELETE RESTRICT,
grade INT CHECK (grade >= 0 AND grade <= 100),
PRIMARY KEY (sno, cno)
);
```
这个表包含三个列,分别是学号(sno)、课程号(cno)和成绩(grade)。其中,学号参照student_2表的sno并设置了删除级联;课程号参照Course_2表的cno并设置了更新级联和拒绝删除。成绩的范围限制在0~100分之间。
希望这个回答能够解决您的问题。如果您还有其他问题,欢迎继续提问。
阅读全文