已知有如下4张表:
学生表:student(学号,学生姓名,出生年月,性别)
成绩表:score(学号,课程号,成绩)
课程表:course(课程号,课程名称,教师号)
教师表:teacher(教师号,教师姓名)

根据以上信息按照下面要求写出对应的SQL语句。
ps:这些题考察SQL的编写能力,对于这类型的题目,需要你先把4张表之间的关联关系搞清楚了,最好的办法是自己在草稿纸上画出关联图,然后再编写对应的SQL语句就比较容易了。下图是我画的这4张表的关系图,可以看出它们之间是通过哪些外键关联起来的:
image.png

一、创建数据库和表

为了演示题目的运行过程,我们先按下面语句在客户端navicat中创建数据库和表。
image.png

1.创建表

1)创建学生表(student)

按下图在客户端navicat里创建学生表

image.png
学生表的“学号”列设置为主键约束,下图是每一列设置的数据类型和约束
image.png
创建完表,点击“保存”
image.png

2)创建成绩表(score)

同样的步骤,创建”成绩表“。“课程表的“学号”和“课程号”一起设置为主键约束(联合主键),“成绩”这一列设置为数值类型(float,浮点数值)
image.png

3)创建课程表(course)

课程表的“课程号”设置为主键约束
image.png

4)教师表(teacher)

教师表的“教师号”列设置为主键约束,
教师姓名这一列设置约束为“null”(红框的地方不勾选),表示这一列允许包含空值(null)
image.png

2.向表中添加数据

image.png

1)向学生表里添加数据

添加数据的sql
image.png
在客户端navicat里的操作
image.png
image.png
https://vdn3.vzuu.com/SD/c8e1c4a4-2381-11eb-96e1-a6a43386dca3.mp4?disable_local_cache=1&auth_key=1645673881-0-0-e8854cb458137b4d0745ee2691c2a30a&f=mp4&bu=pico&expiration=1645673881&v=tx

2)成绩表(score)

添加数据的sql
image.png客户端navicat里的操作
image.png

3)课程表

添加数据的sql
image.png
客户端navicat里的操作
image.png

4)教师表里添加数据

添加数据的sql
image.png
客户端navicat里操作
image.png
添加结果
image.png

https://www.zhihu.com/search?q=sql%E9%9D%A2%E8%AF%95%E5%BF%85%E4%BC%9A50%E9%A2%98&utm_content=search_suggestion&type=content