创建student _course表 字段名 代码 类型 约束 学号 s_no char(8) 主键,与student表中s_no 外键关联,级联删除 上课编号 tcid smallint 主键 学生成绩 score tinyint
时间: 2023-02-10 18:31:20 浏览: 156
好的,我来给你解释一下。
"student_course" 表的字段包括:
- "s_no":学号,字符型,长度为 8,主键,与 "student" 表中的 "s_no" 外键关联,级联删除。
- "tc_id":上课编号,smallint 类型,主键。
- "score":学生成绩,tinyint 类型。
相关问题
按附件(数据字典)说明在你创建的数据库下创建四个表格: t_student(学生表)、t_course(课程表)、t_scores(选课成绩表)、t_class(班级表)。学生信息表( t_student) 字段名 名称 数据类型 空 备注 SNo 学号 Char(20) N 主键 Sname 姓名 varchar(50) N Sex 性别 Char(2) Y class_name 班级名 Char(2) Y 2.课程表 课程表( t_course) 字段名 名称 数据类型 空 备注 CNo 课程编号 Char(10) N 主键 Cname 课程名称 varchar(50) N Credit 学分 Int Y 3.选课表 选课成绩表(scores) 字段名 名称 数据类型 空 备注 SNo 学号 Char(20) N 主键 CNo 课程号 Char(10) N 主键 grade 成绩 Int Y 4.班级表 班级表(t_class) 字段名 名称 数据类型 空 备注 class_name 部门编号 Char(2) N 主键 department 部门名称 varChar(50) N teacher 教师 varChar(20) classroom 教室 varChar(30)
根据数据字典,可以使用以下 SQL 语句在创建的数据库中创建四个表:
```sql
-- 创建学生表
CREATE TABLE t_student (
SNo CHAR(20) NOT NULL PRIMARY KEY COMMENT '学号',
Sname VARCHAR(50) NOT NULL COMMENT '姓名',
Sex CHAR(2) COMMENT '性别',
class_name CHAR(2) COMMENT '班级名',
FOREIGN KEY (class_name) REFERENCES t_class(class_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 创建课程表
CREATE TABLE t_course (
CNo CHAR(10) NOT NULL PRIMARY KEY COMMENT '课程编号',
Cname VARCHAR(50) NOT NULL COMMENT '课程名称',
Credit INT COMMENT '学分'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 创建选课成绩表
CREATE TABLE t_scores (
SNo CHAR(20) NOT NULL COMMENT '学号',
CNo CHAR(10) NOT NULL COMMENT '课程号',
grade INT COMMENT '成绩',
PRIMARY KEY (SNo, CNo),
FOREIGN KEY (SNo) REFERENCES t_student(SNo),
FOREIGN KEY (CNo) REFERENCES t_course(CNo)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- 创建班级表
CREATE TABLE t_class (
class_name CHAR(2) NOT NULL PRIMARY KEY COMMENT '部门编号',
department VARCHAR(50) NOT NULL COMMENT '部门名称',
teacher VARCHAR(20) COMMENT '教师',
classroom VARCHAR(30) COMMENT '教室'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
```
说明:
1. 表名和列名都采用了英文名称,符合要求。
2. 每个表都设置了主键,符合要求。
3. 学生表中的 sex 字段和选课成绩表中的 grade 字段都设置了数据类型,符合要求。
4. 学生表的 class_name 字段和选课成绩表的 SNo 和 CNo 字段都设置了外键约束,参照了班级表的 class_name 字段和课程表的 CNo 字段,符合要求。
5. 课程表添加了 Credit 字段,符合要求。
6. 班级表中的 teacher 和 classroom 字段都没有设置为 NOT NULL,因为数据字典中没有要求,但是仍然按照规范进行了定义。
使用sql语句创建表格t_score,字段信息如下: 1、s_number char(8), 2、c_number char(8), 3、score int; 对t_score表建立约束: 1、建立学号与t_student中学号的外键约束; 2、建立课程号与t_course中课程号的外键约束; 3、(s_number,c_number)为主键。
好的,下面是创建表格t_score的SQL语句以及添加约束的SQL语句:
```
CREATE TABLE t_score (
s_number CHAR(8),
c_number CHAR(8),
score INT,
PRIMARY KEY (s_number, c_number),
FOREIGN KEY (s_number) REFERENCES t_student(s_number),
FOREIGN KEY (c_number) REFERENCES t_course(c_number)
);
```
这个SQL语句将创建一个名为t_score的表格,包含三个字段:s_number、c_number和score。其中,(s_number,c_number)为主键,也就是说,s_number和c_number这两个字段组成了一个唯一标识符。同时,还添加了两个外键约束,分别是s_number和c_number与t_student和t_course表格中的学号和课程号对应的外键约束。
阅读全文