目录

一、实验目的

二、实验软硬件要求

三、实验预习

四、实验内容(实验步骤、测试数据等)

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

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

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

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

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

5..进行以下的查询操作(每一个查询都要给出SQL语句,列出查询结果)。

运行结果:

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

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

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

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

5.进行以下的查询操作(每一个查询都要给出SQL语句,列出查询结果)。


一、实验目的

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

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

3.掌握无条件查询、条件查询、库函数及汇总查询、分组查询、查询的排序、连接查询的使用方法。

二、实验软硬件要求

1、SQL Server 2008

三、实验预习

建库、建表、表约束、数据插入、单表查询、表连接等SQL语句。

四、实验内容(实验步骤、测试数据等)

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

表3.6  学生表S

学号

姓名

性别

专业班级

出生日期

联系电话

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  课程表C

课程号

课程名

学分数

学时数

任课教师

K001

计算机图形学

2.5

40

胡晶晶

K002

计算机应用基础

3

48

任泉

K006

数据结构

4

64

马跃先

M001

政治经济学

4

64

孔繁新

S001

高等数学

3

48

赵晓尘

表3.8  学生作业表W

课程号

学号

作业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中的相应内容。

5. 进行以下的查询操作(每一个查询都要给出SQL语句,列出查询结果)。

(1)查询各位学生的学号、班级和姓名。

(2)查询课程的全部信息。

(3)查询数据库中有哪些专业班级。

(4)查询学时数大于60的课程信息。

(5)查询在1986年出生的学生的学号、姓名和出生日期。

(6)查询三次作业的成绩都在80分以上的学号、课程号。

(7)查询姓张的学生的学号、姓名和专业班级。

(8)查询05级的男生信息。

(9)查询没有作业成绩的学号和课程号。

(10)查询学号为0538的学生的作业1总分。

(11)查询选修了K001课程的学生人数。

(12)查询数据库中共有多少个班级。

(13)查询选修三门以上(含三门)课程的学生的学号和作业1平均分、作业2平均分和作业3平均分。

(14)查询于兰兰的选课信息,列出学号、姓名、课程名(使用两种连接查询的方式)。

运行结果:

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

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

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

create database 学生作业管理数据库;

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

表3.6

字段名

数据类型

长度或者精度

默认值

完整性约束

学号

Char(9)

9字节

Primary key

姓名

Char(20)

20字节

unique

性别

Char(2)

20字节

专业班级

Char(20)

20字节

出生日期

date

联系电话

Char(11)

11字节

表3.7

字段名

数据类型

长度或者精度

默认值

完整性约束

课程号

Char(9)

9字节

Primary key

课程名

Char(20)

20字节

unique

学分数

Numeric(2.1)

小数点一位

学时数

smallint

2字节

任课教师

Char(20)

20字节

表3.8

字段名

数据类型

长度或者精度

默认值

完整性约束

课程号

Char(9)

9字节

Primary key,foreign key

学号

Char(9)

9字节

Primary key,foreign key

作业1成绩

Int

4字节

作业2成绩

Int

4字节

作业3成绩

Int

4字节

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

create table S
(Sno char(9) primary key,
Sname char(20) unique,
Ssex char(2),
Sclass char(20),
Sbirth date,
tell char(11)
);
create table C
(Cno char(9) primary key,
Cname char(20) unique,
Ccredit numeric(2,1),
Chour smallint,
Cteacher char(20)
);
create table W
(Cno char(9) ,
Sno char(9) ,
Wn1 int,
Wn2 int,
Wn3 int,
primary key(Cno,Sno),
foreign key(Sno) references S(Sno),
foreign key(Cno) references C(Cno)
);

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

5. 进行以下的查询操作(每一个查询都要给出SQL语句,列出查询结果)。

(1)查询各位学生的学号、班级和姓名。

select Sno,Sclass,Sname

from S;

(2)查询课程的全部信息。

select *

from C;

(3)查询数据库中有哪些专业班级。

select distinct Sclass

from S;

(4)查询学时数大于60的课程信息。

select *

from C

where Chour>60;

(5)查询在1986年出生的学生的学号、姓名和出生日期。

select Sno,Sname,Sbirth

from S

where Sbirth>='1986-1-1'

and Sbirth<'1987-1-1';

或者

select Sno,Sname,Sbirth
from S
where Sbirth like '%1986%';

来自2023年1月数据库培训记录,g,我还再学数据库O-O

% 表示任意字符出现任意次数。(这里的任意当然包括 0 、1、无数)

_ 只匹配单个字符。

(6)查询三次作业的成绩都在80分以上的学号、课程号。

select W.Sno,W.Cno

from W

where Wn1>80

and Wn2>80

and Wn3>80;

(7)查询姓张的学生的学号、姓名和专业班级。

select Sno,Sname,Sclass

from S

where Sname like'张%';

(8)查询05级的男生信息。

select *

from S

where Sclass like'%05'

and Ssex='男';

(9)查询没有作业成绩的学号和课程号。

select Sno,Cno

from W

where Wn1 is NULL

or Wn2 is NULL

or Wn3 is NULL;

(10)查询学号为0538的学生的作业1总分。

select Sum(Wn1) as 总分数

from W

where Sno=0538;

(11)查询选修了K001课程的学生人数。

select count(Sno) as 选修K001课程的学生人数

from W

where Cno ='K001';

(12)查询数据库中共有多少个班级。

select count(distinct Sclass)  as 班级数

from S;

(13)查询选修三门以上(含三门)课程的学生的学号和作业1平均分、作业2平均分和作业3平均分。

select Sno,AVG(Wn1)as Wn1平均分,AVG(Wn2)as Wn2平均分,AVG(Wn3)as Wn3平均分

FROM W

GROUP BY Sno/*按学生分组 */

Having COUNT(Cno)>=3

(14)查询于兰兰的选课信息,列出学号、姓名、课程名(使用两种连接查询的方式)。

select S.Sno,S.Sname,C.Cname

FROM W

inner join S

on S.Sno=W.Sno

inner join C

on C.Cno=W.Cno

where S.Sname='于兰兰';

select S.Sno,S.Sname,C.Cno

from W,S,C

where S.Sno=W.Sno

and W.Cno=C.Cno

and S.Sname='于兰兰';

五、实验体会

操作不够熟练,需要加强练习。

数据库原理及安全技术教学实验报告SQL实践(一)相关推荐

  1. 数据库原理及安全技术教学实验报告SQL实践(二)

    目录 一.实验目的 二.实验软硬件要求 三.实验预习 四.实验内容(实验步骤.测试数据等) 运行结果: 1.使用查询语句完成以下任务(每一个查询都要给出SQL语句,并且列出查询结果). 2.使用数据操 ...

  2. 《数据库原理与应用》实验一

    题目来源学校课后作业,禁商业用途,仅用于课业学习 <数据库原理与应用>实验一 一.实验目的及要求 1.掌握MySQL系统的数据库创建方式. 2.掌握MySQL系统的数据表的创建方式. 3. ...

  3. 《数据库原理与应用》实验二

    题目来源学校课后作业,禁商业用途,仅用于课业学习 <数据库原理与应用>实验二 一.实验目的及要求 1.掌握SQL查询语言的使用. 2.掌握SQL流程控制语句的使用. 3.要求独立完成,并记 ...

  4. 微型计算机标致寄存器实验报告,微型计算机原理与接口技术实验报告册.doc

    微型计算机原理与接口技术实验报告册 河南省高等教育自学考试 实 验 报 告 册 汽车检测与维修专业(本科) <微型计算机原理与接口技术> 市 地:_______________ 考生姓名: ...

  5. c语言冒泡法排序实验报告,四川大学微机原理冒泡法排序实验报告.doc

    四川大学微机原理冒泡法排序实验报告四川大学微机原理冒泡法排序实验报告 <微机原理与接口技术实验报告> 学 院: 电气信息学院 班 级: 电力 老 师: 学 号: 姓 名: 目 录 实验目的 ...

  6. 微型计算机系统实验报告,《微型计算机系统原理及应用》实验报告1.doc

    <微型计算机系统原理及应用>实验报告 实验步骤: 1.将源程序文件夹masm500存于根目录e中. 2.在win7下,单击"开始一所有程序一附件一命令提示符"进入&qu ...

  7. SQL触发器总结 - sql server 2012数据库基础-触发器及应用-实验报告

    这是我大三第一学期<数据库基础>这门课的实验报告,总共15个实验,我挑了几个比较重要的放在博客上,方便查看和复习,尤其是最近SSM后端开发,希望对大家,以及将来的我有所帮助! 实验要求 在 ...

  8. SQL存储过程总结 - sql server 2012数据库基础-存储过程及应用-实验报告

    这是我大三第一学期<数据库基础>这门课的实验报告,总共15个实验,我挑了几个比较重要的放在博客上,方便查看和复习,尤其是最近SSM后端开发,希望对大家,以及将来的我有所帮助! 本文是存储过 ...

  9. 数据库 查询计算机系姓王,数据库上机实验报告——SQL Server 2008 简单查询.doc

    实验题目SQL Server 2008 简单查询实验时间2016年5月13日实验地点T616实验成绩 实验性质□验证性 √设计性 □综合性教师评价: □算法/实验过程正确: □源程序/实验内容提交 □ ...

  10. [渗透攻防] 一.从数据库原理学习网络攻防及防止SQL注入

    这是最近自己学习渗透和网站攻防的文章,希望能深入地学习这部分知识,同时认了Na师傅和Rong师傅,知道了人外有人.天外有天,真的很享受这种探索问题.解决问题和分析知识的过程.希望文章对你有所帮助,尤其 ...

最新文章

  1. sql列转行函数oracle,SQL列转行
  2. 关机时 ,提示其他用户登录到这台计算机,关闭WINDOWS会使他们丢失数据
  3. Flask web开发之路四
  4. cvc降噪和主动降噪_降噪蓝牙耳机哪款好?300内建议入手的五款主动降噪蓝牙耳机...
  5. 计算机监控检修维护规程,DL/T 1009-2016 水电厂计算机监控系统运行及维护规程
  6. PAT-BASIC-1039-到底买不买
  7. JavaScript 进阶(二)变量作用域
  8. python中的运算和运算符
  9. b+树阶怎么确定_B站公布年度弹幕,这个排名我不太服气
  10. Linux操作系统原理与应用07:内核同步
  11. linux搭建phantomjs+webdriver+testng+ant自动化工程
  12. 存图方式---邻接表邻接矩阵前向星
  13. 如何使用Firepath工具方法定位元素
  14. Desmos图形计算器创建回归方程
  15. ubuntu双系统时间不一致现象
  16. SNES 与 NES 游戏模拟机区别与 SNES Classic界面实现,
  17. 前端理解base64
  18. WatchGuard Firebox X50硬件防火墙
  19. Audition 入门系列(合集)_MediaTea的博客-CSDN博客
  20. Python和NLP构建你自己的简历解析器

热门文章

  1. 公历转农历的程序(代码转载于网络)
  2. python变量、运算符
  3. 理解高阶函数,修炼编程内功
  4. uniapp 连接ibeacon beacon
  5. 目标检测标签分配之 OTA 和 SimOTA 细节学习
  6. 如何快速给Excel文件减肥或者减小文件体积
  7. Is the docker daemon running问题解决方法
  8. 马化腾回应《腾讯没有梦想》是网友杜撰PS
  9. 生命也如同平常到化入夏风里的蝉鸣
  10. 随手写了一段C++访问LDAP, 并且获取sid的代码