• 陈志泊主编《数据库原理及应用教程第4版微课版》的实验题目参考答案实验4


    一、实验目的

    1.掌握各种查询的使用方法。

    2.掌握数据操纵的使用方法。

    二、实验设备

    操作系统:Win11

    开发软件:SQL Server

    三、实验内容

    根据第一部分实验中创建的学生作业管理数据库以及其中的学生表、课程表和学生作业表,进行以下操作。

    1.使用查询语句完成以下任务(每一个查询都要给出SQL语句,并且列出查询结果)。

    (1)查询与“张志国”同一班级的学生信息(使用连接查询和子查询方式)。

    (2)查询比“计算机应用基础”学时多的课程信息(使用连接查询和子查询方式)。

    (3)查询选修课程号为K002的学生的学号、姓名(使用连接查询、普通子查询、相关子查询、使用exists关键字的相关子查询)。

    (4)查询没有选修K001和M001课程的学号、课程号和三次成绩(使用子查询)。

    2.使用数据操纵完成以下任务(每一个任务都要给出SQL语句,并且列出查询结果)。

    (1)在学生表中添加一条学生记录,其中,学号为0593,姓名为张乐,性别为男,专业班级为电子05。

    (2)将所有课程的学分数变为原来的两倍。

    (3)删除张乐的信息。

    SQL语句

    1. use StudentAssignmentDB;
    2. select *from Students as s join
    3. (
    4. select s.MajorClass from Students as s where s.Name='张志国'
    5. )as s1 on s1.MajorClass=s.MajorClass;
    6. select *from Courses as c join
    7. (
    8. select Credit from Courses where CourseName='计算机应用基础'
    9. )as c1 on c.Credit>c1.Credit;
    10. select s.StudentID,s.Name from Students as s join StudentAssignments as sc on s.StudentID=sc.StudentID
    11. where sc.CourseID='K002';
    12. select sa.StudentID,sa.CourseID,sa.Assignment1Grade,sa.Assignment2Grade,sa.Assignment3Grade from StudentAssignments as sa where sa.StudentID not in
    13. (
    14. select sa2.StudentID from StudentAssignments as sa2
    15. where sa2.CourseID in('K001','M001')
    16. );
    17. --insert into Students (StudentID,Name,Gender,MajorClass)values('0593','张乐','男','电子05');
    18. --update Courses set Credit=2*Credit;
    19. --delete from Students where Name='张乐';

  • 相关阅读:
    C++系列-递增运算符重载
    【毕业设计】基于单片机的MP3设计与实现 - stm32
    基于模糊PID的液压舵机伺服系统
    Glide的使用及源码分析
    知识图谱数据库基本知识
    进程概念[上]
    Java线程与锁-1
    12 | JAVASE高级应用-集合
    websocket聊天的功能
    Java复习-26-枚举
  • 原文地址:https://blog.csdn.net/weixin_74027669/article/details/140400298