实验一 库、表操作及查询综合实验
【实验目的】:
- 掌握建库、建表、导入数据的方法
- 掌握insert、update、delete 语句
- 熟练掌握select语句
【实验要求】:
按照下述步骤完成实验,撰写实验报告并提交相应数据库文件。实验报告需呈现每一 步操作结果的截图。实验成绩以百分计。
一、利用 SQL Server Management Studio(SSMS)创建名为“TeachingDB_***”的数据库(*** 表示个人姓名);数据文件初始大小设置为 10MB,不限制增长,增长速度为 10%;日 志文件初始大小为 2MB,最大尺寸为 5MB,增长速度为 1MB 。(2 分)
二、在“TeachingDB_*** ”中按照要求创建下列表。(20 分)
t_student
列名 | 数据类型 | 长度 | 主键 | 是否允许为空 | 说明 |
S# | Char | 10 | 是 | 否 | 学号 |
Sname | Nvarchar | 10 | 否 | 姓名 | |
Sex | Nchar | 1 | 性别 | ||
Age | Int | 年龄 | |||
Major | Nvarchar | 20 | 专业 |
t_teacher
列名 | 数据类型 | 长度 | 主键 | 是否允许为空 | 说明 |
T# | Char | 10 | 是 | 否 | 工号 |
Tname | Nvarchar | 10 | 否 | 姓名 | |
Age | Int | 年龄 | |||
Title | Nvarchar | 20 | 职称 |
t_course
列名 | 数据类型 | 长度 | 主键 | 是否允许为空 | 说明 |
C# | Char | 10 | 是 | 否 | 课程号 |
Cname | Nvarchar | 20 | 否 | 课程名 | |
T# | Char | 10 | 工号,外键(引用 t_teacher 的 T#) |
t_student_course
列名 | 数据类型 | 长度 | 主键 | 是否允许为空 | 说明 |
S# | Char | 10 | 是 | 否 | 学号,外键(引用 t_student 的 S#) |
C# | Char | 10 | 是 | 否 | 课程号,外键(引用 t_course 的 C#) |
Score Int 成绩 |
三、从给定 Excel 文件导入数据到 TeachingDB_***中(3 分)
四、利用 T-SQL 进行表数据的插入、删除与更新(每题 5 分,共计 15 分)
- 向t_student 表中插入一行记录,记录内容为个人真实信息
- 从t_course 表中删除课程名为“工程数学”的课程记录
- 将t_teacher 表中工号为“t001”的教师职称更改为“教授”
五、完成下述查询(每题 4 分,共计 60 分)
- 根据个人学号查询个人信息
- 查询所有姓李的学生的学号,姓名和年龄
- 查询女同学的姓名和年龄,查询结果的列名分别指定为“姓名”和“年龄”
- 查询软件工程(机械电子)专业所有男学生的平均年龄
- 查询年龄在30到 35 岁之间的副教授的姓名和年龄,查询结果按年龄降序排列
- 查询所有学生的学号,姓名和性别,将查询结果插入到新表t_sinfo中
- 查询有同学选修的课程的课程号及课程名
- 查询李平同学所选修课程的课程号,课程名和成绩
- 查询选修了数据库课程但成绩为空的学生的姓名
- 查询既选修了C001号课程,又选修了 C002 号课程的学生的学号
- 查询李平同学选修的课程的门数以及平均成绩
- 查询年龄比李平同学大的所有学生的学号,姓名和年龄
- 查询每个专业的学生人数,查询结果中显示“专业”和“人数”两列
- 查询选课人数超过5 人的课程信息,要求显示课程号,课程名和选修人数
- 查询没有选修数据库课程的学生的学号
点点赞赏,手留余香
给TA打赏
评论0