使用SQL语言创建以下3个数据表:学生表(student)、课程表(course)、学生选课表(SC),分别写出SQL语句。 各表的结构分别如下: student表结构: 字段名称 数据类型 是否为空 约束 说明 SNo char(8) 否 主键 SName varchar(20) 否 唯一值 SGender char(2) 否 检查约束 为男或女 SAge int 可以 Scredits int 可以 · course表结构: 字段名称 数据类型 是否允许空值 约束 说明 CNo char(5) 否 主键 课程编号 CName varchar(30) 否 唯一值 课程名称 CPno char(5) 可以 外键course(CNO) 先修课程 CCredits int 可以 默认值4 学分 · SC表结构: 字段名称 数据类型 是否允许空值 约束 说明 SNo char(8) 否 外键 学号 CNo char(5) 否 外键 课程编号 Score decimal(3,1) 可以 0~100 成绩
时间: 2024-02-10 18:16:29 浏览: 38
创建student表的SQL语句:
```SQL
CREATE TABLE student (
SNo CHAR(8) NOT NULL,
SName VARCHAR(20) NOT NULL UNIQUE,
SGender CHAR(2) NOT NULL CHECK(SGender IN ('男', '女')),
SAge INT,
Scredits INT,
PRIMARY KEY (SNo)
);
```
创建course表的SQL语句:
```SQL
CREATE TABLE course (
CNo CHAR(5) NOT NULL,
CName VARCHAR(30) NOT NULL UNIQUE,
CPno CHAR(5),
CCredits INT DEFAULT 4,
PRIMARY KEY (CNo),
FOREIGN KEY (CPno) REFERENCES course(CNo)
);
```
创建SC表的SQL语句:
```SQL
CREATE TABLE SC (
SNo CHAR(8) NOT NULL,
CNo CHAR(5) NOT NULL,
Score DECIMAL(3, 1),
PRIMARY KEY (SNo, CNo),
FOREIGN KEY (SNo) REFERENCES student(SNo),
FOREIGN KEY (CNo) REFERENCES course(CNo),
CHECK (Score BETWEEN 0 AND 100)
);
```