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

  • 实验目的

1.掌握在SQL Server中使用对象资源管理器和SQL命令创建数据库与修改数据库的方法。

2.掌握在SQL Server中使用对象资源管理器或者SQL命令创建数据表和修改数据表的方 法(以SQL命令为重点)。

  • 实验设备

操作系统:Win11

开发软件:SQL Server

  • 实验内容

给定如表3.6、表3.7和表3.8所示的学生信息。

表3.6  学生表

学号

姓名

性别

专业班级

出生日期

联系电话

0433

张艳

生物04

1986-9-13

0496

李越

电子04

1984-2-23

1381290××××

0529

赵欣

会计05

1984-1-27

1350222××××

0531

张志国

生物05

1986-9-10

1331256××××

0538

于兰兰

生物05

1984-2-20

1331200××××

0591

王丽丽

电子05

1984-3-20

1332080××××

0592

王海强

电子05

1986-11-1

表3.7  课程表

课程号

课程名

学分数

学时数

任课教师

K001

计算机图形学

2.5

40

胡晶晶

K002

计算机应用基础

3

48

任泉

K006

数据结构

4

64

马跃先

M001

政治经济学

4

64

孔繁新

S001

高等数学

3

48

赵晓尘

表3.8  学生作业表

课程号

学号

作业1成绩

作业2成绩

作业3成绩

K001

0433

60

75

75

K001

0529

70

70

60

K001

0531

70

80

80

K001

0591

80

90

90

K002

0496

80

80

90

K002

0529

70

70

85

K002

0531

80

80

80

K002

0538

65

75

85

K002

0592

75

85

85

K006

0531

80

80

90

课程号

学号

作业1成绩

作业2成绩

作业3成绩

K006

0591

80

80

80

M001

0496

70

70

80

M001

0591

65

75

75

S001

0531

80

80

80

S001

0538

60

80

1.在SQL Server中使用对象资源管理器和SQL命令创建学生作业管理数据库,数据库的名称自定。

(1)使用对象资源管理器创建数据库,请给出重要步骤的截图。

(2)删除第(1)步创建的数据库,再次使用SQL命令创建数据库,请给出SQL代码。

(3)创建数据库之后,如果有需要,可以修改数据库。

2.对表3.6,表3.7和表3.8,分别以下表的方式给出各字段的属性定义和说明。

3.使用SQL命令在学生作业管理数据库中建立学生表、课程表和学生作业表,在实验报告中给出SQL代码。

4.在各个表中输入表3.6、表3.7和表3.8中的相应内容。

  • 实验步骤及实验结果

1.在SQL Server中使用对象资源管理器和SQL命令创建学生作业管理数据库,数据库的名称自定。

2.对表3.6,表3.7和表3.8,分别以下表的方式给出各字段的属性定义和说明。

学生表(Students)

字段名

数据类型

长度或精度

默认值

完整性约束

学号(StudentID)

varchar

10

主键约束

姓名(Name)

varchar

20

性别(Gender)

varchar

2

专业班级(MajorClass)

varchar

10

出生日期(Birthdate)

date

联系电话(ContactNumber)

varchar

15

课程表(Class)

字段名

数据类型

长度或精度

默认值

完整性约束

课程号(CourseID)

varchar

10

主键约束

课程名(CourseName)

varchar

30

学分数(Credit)

decimal

总位数4位,精度为小数后一位

学时数(Hours)

int

任课老师(Instructor)

varchar

20

学生作业表(StudentHomework)

字段名

数据类型

长度或精度

默认值

完整性约束

课程号(CourseID)

varchar

10

外键约束,主键约束

学号(StudentID)

varchar

10

外键约束,主键约束

作业1成绩(Assignmet1Grade)

int

作业2成绩(Assignment2Grade)

int

作业3成绩(Assignmet3Grade)

int

3.使用SQL命令在学生作业管理数据库中建立学生表、课程表和学生作业表,在实验报告中给出SQL代码。

1.CREATE DATABASE StudentAssignmentDB;  
2.USE StudentAssignmentDB;  
3.CREATE TABLE Students (  
4.     StudentID VARCHAR(10) PRIMARY KEY,  
5.     Name VARCHAR(20),  
6.     Gender VARCHAR(2),  
7.     MajorClass VARCHAR(10),  
8.     Birthdate DATE,  
9.     ContactNumber VARCHAR(15)  
10.   );  
11.   CREATE TABLE Courses (  
12.     CourseID VARCHAR(10) PRIMARY KEY,  
13.     CourseName VARCHAR(30),  
14.     Credit DECIMAL(4, 1),  
15.     Hours INT,  
16.     Instructor VARCHAR(20)  
17.   );  
18.   CREATE TABLE StudentAssignments (  
19.     CourseID VARCHAR(10),  
20.     StudentID VARCHAR(10),  
21.     Assignment1Grade INT,  
22.     Assignment2Grade INT,  
23.     Assignment3Grade INT,  
24.     PRIMARY KEY (CourseID, StudentID),  
25.     FOREIGN KEY (CourseID) REFERENCES Courses(CourseID),  
26.     FOREIGN KEY (StudentID) REFERENCES Students(StudentID)  
27.   );  

4.在各个表中输入表3.6、表3.7和表3.8中的相应内容。

1.INSERT INTO Students (StudentID, Name, Gender, MajorClass, Birthdate, ContactNumber)  
2.VALUES  
3.('0433', '张艳', '女', '生物04', '1986-09-13', NULL),  
4.('0496', '李越', '男', '电子04', '1984-02-23', '1381290xxxx'),  
5.('0529', '赵欣', '男', '会计05', '1984-01-27', '1350222xxxx'),  
6.('0531', '张志国', '男', '生物05', '1986-09-10', '1331256xxxx'),  
7.('0538', '于兰兰', '女', '生物05', '1984-02-20', '1331200xxxx'),  
8.('0591', '王丽丽', '女', '电子05', '1984-03-20', '1332080xxxx'),  
9.('0592', '王海强', '男', '电子05', '1986-11-01', NULL);  
10.INSERT INTO Courses (CourseID, CourseName, Credit, Hours, Instructor)  
11.VALUES  
12.('K001', '计算机图形学', 2.5, 40, '胡晶晶'),  
13.('K002', '计算机应用基础', 3, 48, '任泉'),  
14.('K006', '数据结构', 4, 64, '马跃先'),  
15.('M001', '政治经济学', 4, 64, '孔繁新'),  
16.('S001', '高等数学', 3, 48, '赵晓尘');  
17.INSERT INTO StudentAssignments (CourseID, StudentID, Assignment1Grade, Assignment2Grade, Assignment3Grade)  
18.VALUES  
19.('K001', '0433', 60, 75, 75),  
20.('K001', '0529', 70, 70, 60),  
21.('K001', '0531', 70, 80, 80),  
22.('K001', '0591', 80, 90, 90),  
23.('K002', '0496', 80, 80, 90),  
24.('K002', '0529', 70, 70, 85),  
25.('K002', '0531', 80, 80, 80),  
26.('K002', '0538', 65, 75, 85),  
27.('K002', '0592', 75, 85, 85),  
28.('K006', '0531', 80, 80, 90),  
29.('K006', '0591', 80, 80, 80),  
30.('M001', '0496', 70, 70, 80),  
31.('M001', '0591', 65, 75, 75),  
32.('S001', '0531', 80, 80, 80),  
33.('S001', '0538', 60, NULL, 80);  
  • 实验总结

通过本次实验,我学会了在SQL Server中使用对象资源管理器和SQL命令创建数据库。使用对象资源管理器可以通过可视化界面轻松创建数据库,而使用SQL命令则更加灵活和可扩展。我还学会了通过SQL命令删除数据库,并重新使用SQL命令创建数据库。最后,我了解到可以使用ALTER DATABASE语句修改数据库的属性。

通过这次实验,我掌握了在SQL Server中创建和修改数据库的基本技能,这对于数据库的管理和维护非常重要。

完整SQL代码

CREATE DATABASE StudentAssignmentDB;
USE StudentAssignmentDB;
CREATE TABLE Students (
     StudentID VARCHAR(10) PRIMARY KEY,
     Name VARCHAR(20),
     Gender VARCHAR(2),
     MajorClass VARCHAR(10),
     Birthdate DATE,
     ContactNumber VARCHAR(15)
   );
   CREATE TABLE Courses (
     CourseID VARCHAR(10) PRIMARY KEY,
     CourseName VARCHAR(30),
     Credit DECIMAL(4, 1),
     Hours INT,
     Instructor VARCHAR(20)
   );
   CREATE TABLE StudentAssignments (
     CourseID VARCHAR(10),
     StudentID VARCHAR(10),
     Assignment1Grade INT,
     Assignment2Grade INT,
     Assignment3Grade INT,
     PRIMARY KEY (CourseID, StudentID),
     FOREIGN KEY (CourseID) REFERENCES Courses(CourseID),
     FOREIGN KEY (StudentID) REFERENCES Students(StudentID)
   );
INSERT INTO Students (StudentID, Name, Gender, MajorClass, Birthdate, ContactNumber)
VALUES
('0433', '张艳', '女', '生物04', '1986-09-13', NULL),
('0496', '李越', '男', '电子04', '1984-02-23', '1381290xxxx'),
('0529', '赵欣', '男', '会计05', '1984-01-27', '1350222xxxx'),
('0531', '张志国', '男', '生物05', '1986-09-10', '1331256xxxx'),
('0538', '于兰兰', '女', '生物05', '1984-02-20', '1331200xxxx'),
('0591', '王丽丽', '女', '电子05', '1984-03-20', '1332080xxxx'),
('0592', '王海强', '男', '电子05', '1986-11-01', NULL);
INSERT INTO Courses (CourseID, CourseName, Credit, Hours, Instructor)
VALUES
('K001', '计算机图形学', 2.5, 40, '胡晶晶'),
('K002', '计算机应用基础', 3, 48, '任泉'),
('K006', '数据结构', 4, 64, '马跃先'),
('M001', '政治经济学', 4, 64, '孔繁新'),
('S001', '高等数学', 3, 48, '赵晓尘');
INSERT INTO StudentAssignments (CourseID, StudentID, Assignment1Grade, Assignment2Grade, Assignment3Grade)
VALUES
('K001', '0433', 60, 75, 75),
('K001', '0529', 70, 70, 60),
('K001', '0531', 70, 80, 80),
('K001', '0591', 80, 90, 90),
('K002', '0496', 80, 80, 90),
('K002', '0529', 70, 70, 85),
('K002', '0531', 80, 80, 80),
('K002', '0538', 65, 75, 85),
('K002', '0592', 75, 85, 85),
('K006', '0531', 80, 80, 90),
('K006', '0591', 80, 80, 80),
('M001', '0496', 70, 70, 80),
('M001', '0591', 65, 75, 75),
('S001', '0531', 80, 80, 80),
('S001', '0538', 60, NULL, 80);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/778845.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C语言实现顺序表字符型数据排序

实现直接插入、冒泡、直接选择排序算法。 #include <stdio.h> #include <stdlib.h>typedef char InfoType;#define n 10 //假设的文件长度&#xff0c;即待排序的记录数目 typedef char KeyType; //假设的关键字类型 typedef struct { //记录类型KeyType…

最小权顶点覆盖问题-优先队列分支限界法-C++

问题描述: 给定一个赋权无向图 G(V,E)&#xff0c;每个顶点 v∈V 都有一个权值 w(v)。如果 U⊆V&#xff0c;U⊆V&#xff0c;且对任意(u,v)∈E 有 u∈U 或 v∈U&#xff0c;就称 U 为图 G 的一个顶点覆盖。G 的最小权顶点覆盖是指 G 中所含顶点权之和最小的顶点覆盖。对于给定…

干货分享 | HTTP代理与SOCKS5代理的优缺点

本次我们来聊聊HTTP代理和SOCKS5代理这两种常见的代理协议。了解它们的优缺点和搭建方法&#xff0c;可以帮助你在各种应用场景中选择最合适的代理方式。让我们一起来探索吧&#xff01; HTTP代理的优缺点 优点&#xff1a; 简单易用&#xff1a;HTTP代理主要用于处理HTTP协…

代码随想录算法训练营第23天|LeetCode 39. 组合总和、40.组合总和II、131.分割回文串

1. LeetCode 39. 组合总和 题目链接&#xff1a;https://leetcode.cn/problems/combination-sum/description/ 文章链接&#xff1a;https://programmercarl.com/0039.组合总和.html 视频链接&#xff1a;https://www.bilibili.com/video/BV1KT4y1M7HJ 思路&#xff1a; 本题和…

Java多语言跨境电商外贸商城源码 tiktok商城系统源码 跨境电商源码

Java多语言跨境电商外贸商城源码 tiktok商城系统源码 跨境电商源码 技术栈 PC端使用&#xff1a;vueelementui 用户端使用&#xff1a;uniapp 管理端使用&#xff1a;vueelementui 后台服务使用&#xff1a;springbootmybatisplusmysql 功能描述&#xff1a; 对接PayPal…

统计是一门艺术(非参数假设检验)

1.定义 当总体分布未知&#xff0c;那么就需要一种与分布具体数学形式无关的统计推断方法&#xff0c;称为非参数方法 只能利用样本中的一般信息包括位置和次序关系等 稳健性强 2.符号检验 考虑问题&#xff1a; 小样本情况&#xff1a; 以概率为1/2的二项分布是对称的 两…

idea部署war包成功,但是接口404

场景 项目结构 xxx-xxx-app xxx-xxx-service xxx-xxx-webappapp/webapp依赖service&#xff0c;service中写了各种api&#xff0c;先别管它合不合理&#xff0c;正式环境用webapp发布。 本地配置tomcat启动&#xff0c;但是发现每次部署成功&#xff0c;但是service中的接口…

使用Ubuntu 22.04安装Frappe-Bench【二】

系列文章目录 第一章 使用VMware创建Ubuntu 22.04【一】 文章目录 系列文章目录前言什么是Frappe-Bench&#xff1f;使用安装ERPNext能实现什么效果&#xff1f; 官网给了一个说明 一、使用Ubuntu 22.04安装Frappe-Bench一、安装要求二、安装命令三、 可能出现问题 总结 前言 …

hnust 1816: 算法10-9:简单选择排序

hnust 1816: 算法10-9&#xff1a;简单选择排序 题目描述 选择排序的基本思想是&#xff1a;每一趟比较过程中&#xff0c;在n-i1(i1,2,…,n-1)个记录中选取关键字最小的记录作为有序序列中的第i个记录。 在多种选择排序中&#xff0c;最常用且形式最为简单的是简单选择排序。…

JavaScript中的立即执行函数表达式(Immediately Invoked Function Expression, IIFE)

聚沙成塔每天进步一点点 本文回顾 ⭐ 专栏简介JavaScript中的立即执行函数表达式&#xff08;Immediately Invoked Function Expression, IIFE&#xff09;1. 引言2. IIFE的概念2.1 概述2.2 语法2.3 历史背景 3. IIFE的作用3.1 创建独立作用域3.2 模块化代码3.3 防止变量提升3.…

动态路由--RIP配置(思科cisco)

一、简介 RIP协议&#xff08;Routing Information Protocol&#xff0c;路由信息协议&#xff09;是一种基于距离矢量的动态路由选择协议。 在RIP协议中&#xff0c;如果路由器A和网络B直接相连&#xff0c;那么路由器A到网络B的距离被定义为1跳。若从路由器A出发到达网络B需要…

Apache Seata分布式事务启用Nacos做配置中心

本文来自 Apache Seata官方文档&#xff0c;欢迎访问官网&#xff0c;查看更多深度文章。 本文来自 Apache Seata官方文档&#xff0c;欢迎访问官网&#xff0c;查看更多深度文章。 Seata分布式事务启用Nacos做配置中心 Seata分布式事务启用Nacos做配置中心 项目地址 本文作…

FreeU: Free Lunch in Diffusion U-Net——【代码复现】

这篇文章发表于CVPR 2024&#xff0c;官网地址&#xff1a;ChenyangSi/FreeU: FreeU: Free Lunch in Diffusion U-Net (CVPR2024 Oral) (github.com) 一、环境准备 提前准备好python、pytorch环境 二、下载项目依赖 demo下有一个requirements.txt文件&#xff0c; pip inst…

Fill - UVA 10603

网址如下&#xff1a; Fill - UVA 10603 - Virtual Judge (vjudge.net) 感觉有点浮躁&#xff0c;没法完全将思绪投入题的思考中 脑袋糊糊的 一道bfs题 代码如下&#xff1a; #include<queue> #include<cstdio> #include<cstring> #include<vector&g…

开放式耳机哪个牌子好?悠律、漫步者、韶音全面对比与推荐

对于现在的无线耳机市场而言&#xff0c;开放式耳机迎来的真正的大爆发&#xff0c;关键的是它采用了定向传声方式&#xff0c;我们在运动时除了可以感受到音乐带来的快乐外&#xff0c;还能时刻保持对外界环境音的警觉。 今天&#xff0c;我们将为大家详细对比推荐三款备受瞩…

Redis中list类型操作命令(操作演示、命令语法、返回值、时间复杂度、注意事项等)

文章目录 lpush 命令lrange 命令lpushx 命令rpush 命令rpushx 命令lpop 命令rpop 命令lindex 命令linsert 命令llen 命令lrem 命令ltrim 命令lset 命令blpop 和 brpop lpush 命令 从左侧向列表中插入指定的元素 语法&#xff1a;lpush key value [value……] 时间复杂度&#…

大厂面试官赞不绝口的后端技术亮点【后端项目亮点合集(2)】

本文将持续更新~~ hello hello~ &#xff0c;这里是绝命Coding——老白~&#x1f496;&#x1f496; &#xff0c;欢迎大家点赞&#x1f973;&#x1f973;关注&#x1f4a5;&#x1f4a5;收藏&#x1f339;&#x1f339;&#x1f339; &#x1f4a5;个人主页&#xff1a;绝命C…

第三方商城对接重构(HF202407)

文章目录 项目背景一、模块范围二、问题方案1. 商品模块整体来说这块对接的不是太顺利,梳理了几条大概的思路:2. 订单模块3. 售后4. 发票5. 结算单经验总结项目背景 作为供应商入围第三方商城成功,然后运营了一段时间,第三方通知要重构, 需要重新对接打通接口完成系统对接…

【网络管理工具】NETworkManager工具的基本使用教程

【网络管理工具】NETworkManager工具的基本使用教程 一、NETworkManager工具介绍1.1 NETworkManager简介1.2 NETworkManager特点1.3 NETworkManager使用场景 二、下载NETworkManager软件包2.1 下载地址2.2 下载软件 三、运行NETworkManager工具3.1 解压NETworkManager3.2 运行N…

WPF中Background=“{x:Null}“ 和 Transparent

WPF中关于背景透明和背景无 此时&#xff0c;我代码中是写的有有个控件&#xff0c;一个Border &#xff0c;一个TextBox &#xff0c;范围都是全屏这么大&#xff0c;可以输入TextBox 因为&#xff0c;当border没有设置背景的时候&#xff0c;实际上是&#xff1a; <Borde…