在exam数据库中根据如下E-R图利用SQL语句创建student(学生表)、course(课程 表)和score(分数表),创建时注意每个表的主键所对应的字段
时间: 2024-11-03 14:13:08 浏览: 11
利用sql语句创建数据库和表.pdf
首先,我们需要理解E-R图表示了实体之间的关系,包括学生、课程和分数之间的关联。在这个场景中,通常会有以下关系:
- 学生可以选修多门课程,每个课程可以有多个学生选择。
- 每个学生有一个唯一的学号(student_id),每门课程有一个唯一的课程编号(course_id)。
基于这些关系,我们可以创建相应的SQL语句来创建三个表:
1. 创建student表:
```sql
CREATE TABLE student (
student_id INT PRIMARY KEY,
name VARCHAR(50),
age INT,
email VARCHAR(100)
);
```
2. 创建course表:
```sql
CREATE TABLE course (
course_id INT PRIMARY KEY,
course_name VARCHAR(100),
teacher VARCHAR(50)
);
```
3. 创建score表 (外键关联):
```sql
CREATE TABLE score (
score_id INT AUTO_INCREMENT PRIMARY KEY,
student_id INT,
course_id INT,
grade INT,
FOREIGN KEY (student_id) REFERENCES student(student_id),
FOREIGN KEY (course_id) REFERENCES course(course_id)
);
```
这里`FOREIGN KEY`用于建立score表与student表和course表之间的关联,并确保数据一致性。
阅读全文