文档库 最新最全的文档下载
当前位置:文档库 › 实验-数据库原理

实验-数据库原理

实验-数据库原理
实验-数据库原理

《数据库原理》上机指导书

(第一版)

信息工程学院

2010-9-1

目录

实验一、关系数据库标准语言SQL-数据定义语言 (1)

实验二、关系数据库标准语言SQL-数据查询语言 (5)

实验三、关系数据库标准语言SQL-数据操纵语言 (8)

实验四、数据库的完整性 (10)

实验五、数据库的安全性 (12)

实验六、数据库设计 (17)

综合实验—SQL综合练习 (22)

实验一、关系数据库标准语言SQL-数据定义语言

一、实验目的

1、通过对SQL SERVER2005的使用,了解数据库管理系统的工作原理和系统构架,加深对数据库基本知识的理解。

2、通过实验加深对数据库对象模式、表、索引的理解,掌握SQL中数据定义语言的基本功能。

二、实验类型

验证型

三、实验环境

CPU 2.0 GHz, 1.0 G Memory;Windows2003, SQL Server 2005。

四、实验内容及步骤

1、了解SQL SERVER中服务的涵义,学会启动和停止服务。

2、掌握SQL Server Management Studio的启动方式和连接方法。了解对象资源管理器,SQL语句的编译运行过程。

3、在SQL Server Management Studio中创建数据库Library。

Create Database Library

4、在Library中为用户dbo创建模式Lib。

5、在模式Lib中创建三张表Books、Readers、L_R。

Books(bookid,bookname,author,price,pubcompany,csl)

字段说明:bookid-图书编号,bookname-图书名称,author-作者,price-单价,pubcompany -出版社,csl-藏书量

Readers(rno,rname,rsex,spet,dept,bday)

字段说明:rno-读者编号,rname-读者姓名,rsex-性别,spet-专业,dept-系别,bday -出生日期

L_R (rno,bookid,lenddate,limitdate,returndate,fine)

字段说明:rno-读者编号,bookid-图书编号,lenddate-借书时间,limitdate-限定还书日期,returndate-还书时间,fine-罚金

要求:在创建表的过程中为每张表设置主码。

6、ALTER TABLE语句练习。在已建好的三张表中,增加新的列、修改已有的列,删除列。

*在books中增加列classid(分类号)

*修改books中classid的数据类型

*删除books中的列classid

7、分别在Books、Readers、L_R表中创建索引(创建索引的字段可任意)。

8、删除模式Lib。

思考:

1、在模式Lib中创建表有哪些方法?

2、第8题是否可以直接删除成功,如果不能要怎么做才能删除成功?

**五、设置默认模式

1、创建登录名s1。设置该登录名的密码,默认数据库:Library。

2、在Library创建用户s1。

3、以登录名s1登陆数据库服务器

4、为用户s1创建一个模式ST。

5、将模式ST设置为默认模式

ALTER USER s1 WITH DEFAULT_SCHEMA =ST;

6、再次创建readers表。

7、查看readers属于哪个模式?

六、实验要求

在每次实验前,学生必须根据实验指导书设计出实验方案(程序和实验步骤);在实验过程中要求独立进行程序调试和排错,学会使用在线帮助来解决实验中遇到的问题,同时运用理论的知识来分析问题和解决问题,记录下实验过程和结果。上机结束后写出实验报告,并对实验过程进行分析和总结。

实验二、关系数据库标准语言SQL-数据查询语言

一、实验目的

1、理解Select 查询语句中各个子句在查询中的基本作用。

2、通过多种类型查询的设计,掌握Select 语句各子句的功能和使用方法。

二、实验类型

设计型

三、实验环境

CPU 2.0 GHz, 1.0 G Memory ;Windows2003, SQL Server 2005。

三、实验内容及步骤

1、利用数据库jxgl 完成下列查询。(在SQL SERVER2005上附加数据库jxgl ) 安装好的SQL Server2005没有用户数据库,如果磁盘上有数据库文件,可以将其附加到数据库服务器中。

图2-1 选择附加操作窗口

图2-2 “附加数据库”窗口

操作:在“对象资源管理器”窗口中,选择数据库服务器,右击“数据库”在弹出菜单中单击“附加”命令,打开“附加数据库”对话框。

图2-3 “定位数据库文件”对话框

点击“确定”后,回到“附加数据库”对话框。

图2-4 “附加数据库”对话框

选择扩展名是.mdf 的数据文件

(1)查询03物流1学生的详细信息

(2)查询“入学成绩”在350到400分之间的学生的姓名和班级(用两种方法)(3)查询students表中现有的班级(要求班级名称不要重复)

(4)查询具有“教授”或“副教授”职称的教师的教师编号和姓名(用两种方法)

(5)查询姓“陈”,且籍贯是“宁波”的学生的姓名,出生日期,入学成绩(6)查询students表中“09级”的学生信息

(7)查询姓名中包含“菲”字的学生的学号、姓名、性别、班级

(8)查询教师上课情况表中还没有安排好上课教师的班级和对应的课程号(9)查询全体学生情况,查询结果按所在班级名升序排列,同一班级中的学生按出生日期降序排列

(10)统计03物流1学生“入学成绩”的平均分、最高分、最低分

(11)统计students表中的学生人数

(12)统计各个班级的学生人数,按统计结果做降序排列

(13)统计各门课程的平均成绩,结果显示课程号和平均成绩

(14)查询平均成绩80以上的课程编号

(15)查询平均成绩75分以上的学生的学号

(16)查询教师人数在5人以上的部门,查询结果显示部门名称和教师人数,查询结果按教师人数作降序排列

四、实验要求

在每次实验前,学生必须根据实验指导书设计出实验方案(程序和实验步骤);在实验过程中要求独立进行程序调试和排错,学会使用在线帮助来解决实验中遇到的问题,同时运用理论的知识来分析问题和解决问题,记录下实验过程和结果。上机结束后写出实验报告,并对实验过程进行分析和总结。

实验三、关系数据库标准语言SQL-数据操纵语言

一、实验目的

1、深入理解连接查询和嵌套查询的语句格式、执行过程,掌握它们的使用方法。

2、理解数据操纵语言INSERT、UPDATE、DELETE语句的格式和作用,掌握它们的使用方法和应用范围。

3、理解视图的概念,掌握其定义方法和应用方法。

二、实验类型

设计型

三、实验环境

CPU 2.0 GHz, 1.0 G Memory;Windows2003, SQL Server 2005。

四、实验内容及步骤

1、在SQL SERVER2005上附加数据库jxgl。

2、在jxgl中完成下列查询

(1)查询选修了课程学生的学号、姓名、所选课程号、课程名称以及取得的成绩

(2)查询选修了‘计算机基础’这门课程的学生的学号、姓名、班级、成绩

*(3)查询每一门课程及其先修课程,查询结果显示课程号、课程名和先修课程名

(4)查询和“刘涛”在一个班级的学生的信息

(5)查询没有选修过任何课程的学生的信息(学号、姓名、班级)思考:该查询可用几种方法实现?

(6)查询“姚明”给哪些个班级上课?

(7)查询“姚明”给上哪些课程?

(8)查询学号为“0311102”学生选修课程的学分总和

(9)查询其他班中比“03计算应用1”所有学生入学成绩高的学生的姓名和入学成绩

思考:该查询可用几种方法实现?

(10)查询既选修了“计算机基础”又选修了“C语言基础”的学生的学号(11)查询既选修了“计算机基础”或者选修了“C语言基础”的学生的学号

*(12)查询每个学生超过该门课程平均成绩的课程号(查询结果显示学号和课程号)

3、在jxgl中完成下列数据更新

(1)向course表添加一个新的元组。(元组的可自定义)

(2)将“0301102”学生所选的“0000002”课程的成绩改为100,绩点改为2 (3)修改“黄圣依”所选的“0000002”课程的成绩,在原成绩上减去10分(4)删除(1)在course表中添加的元组

(5)统计每门课程的平均成绩并将统计结果存入到jxgl数据库中

注意:先建表,再将查询结果添加到表中

4、定义视图V_TC,该视图包含教师的编号、姓名、上课的课程号、课程名称及班级。

5、在第4题定义的视图V_TC中完成下列查询

(1)查询“姚明”所上课程名称和班级。

(2)统计每一位教师上课的数量

五、实验要求

在每次实验前,学生必须根据实验指导书设计出实验方案(程序和实验步骤);在实验过程中要求独立进行程序调试和排错,学会使用在线帮助来解决实验中遇到的问题,同时运用理论的知识来分析问题和解决问题,记录下实验过程和结果。上机结束后写出实验报告,并对实验过程进行分析和总结。

实验四、数据库的完整性

一、实验目的

1、理解数据库完整性的内容以及各类约束的作用。

2、掌握设置数据表中的各类约束的SQL语句。

2、根据要求为数据表设计数据类型、完整性约束实现数据库的完整性,设计数据验证各类约束的效果,并根据数据库管理系统的提示分析各种出现违反完整性约束的情况。

二、实验类型

设计型

三、实验环境

CPU 2.0 GHz, 1.0 G Memory;Windows2003, SQL Server 2005。

四、实验内容及步骤

理解以下几张表的内容,根据实际情况设计属性名、数据类型、及各种完整性约束(primary key、foreign key、not null、unique、check),用数据定义语言实现,然后设计实验数据验证约束的效果,当操作违反了完整性约束条件时,数据库管理系统是如何处理的。

1、创建数据库S_T。

2、新建一张学生信息表,该表至少包含学号,姓名,性别,出生年月datetime,专业号,身份证号,联系方式等属性,数据类型根据实际情况选择。

要求:在建表的过程中选择合适的属性设置主码(primary key),唯一约束(unique),为性别设置检查约束(check)使该属性只能取“男”或“女”。

3、新建一张专业信息表,该表至少包含专业号,专业名称,专业负责人,专业简介等属性,数据类型根据实际情况决定。

要求:在建表的过程中选择合适的属性设置主码(primary key),唯一约束(unique)。

4、新建一张课程信息表,该表至少包含课程号,课程名称,学分,开课学期等属性,数据类型根据实际情况决定。

要求:在建表的过程中选择合适的属性设置主码(primary key),为学分设置约束使该属性取值范围为1到10之间的整数。

思考:可以设置唯一约束的属性有哪些?

5、新建一张选课信息表,该表至少包含学号,课程号,成绩,基点等属性,数据类型根据实际情况决定。

要求:在建表的过程中选择合适的属性设置主码(primary key),为成绩设置约束使该属性取值范围为0到100之间的整数。为基点设置约束使该属性取值为0或者大于等于1的值。

*思考:设置一个约束使得基点在成绩小于60时取0,大于等于60时取大于等于1的值。

6、修改学生信息表,为该表添加外码,实现表间数据的参考完整性。

7、修改选课信息表,为该表添加外码,实现表间数据的参考完整性。要求允许级联更新,但不允许级联删除。

思考:该表可以设置几个外码?分别是什么?

8、用insert语句分别向这四张数据表添加元组来检验已经建立的各类约束在实现数据完整性方面的作用(既要设计正确的元组也要设计错误的元组)。在实验结果与分析中记录下测试的元组数据,如果出错分析错误原因。记录如下:

示例:向专业信息表添加数据

1)insert into 专业values(…..) 执行成功

2)再次执行insert into 专业values(…..) 提示出错,错误原因是违反了实体完整性规则。

要求:每张表填写2-3条以上的数据;每个类型的完整性约束至少测试一次正确的数据和一次错误的数据。

五、实验要求

在每次实验前,学生必须根据实验指导书设计出实验方案(程序和实验步骤);在实验过程中要求独立进行程序调试和排错,学会使用在线帮助来解决实验中遇到的问题,同时运用理论的知识来分析问题和解决问题,记录下实验过程和结果。上机结束后写出实验报告,并对实验过程进行分析和总结。

实验五、数据库的安全性

一、实验目的

1、了解SQL Server2005的安全性机制。理解登陆账户、用户账户、角色之间的关系。

2、理解并掌握使用SQL进行自主存取控制实现数据库的安全性。

二、实验类型

验证型

三、实验环境

CPU 2.0 GHz, 1.0 G Memory;Windows2003, SQL Server 2005。

四、背景知识

1、SQL Server 2005数据库中的数据必须经过三个级别的认证过程:

1)第一个认证过程是Windows级别,即Windows身份验证,需通过登录账户来标识用户。身份验证只验证用户是否具有连接到SQL Server数据库服务器的资格。

2)第二个级别的认证是SQL Server级别的认证,该认证过程是当用户访问数据库时,必须具有对具体数据库的访问权,即验证用户是否是数据库的合法用户。3)第三个级别是数据库级,该级别是指当用户操作数据库中的数据对象时,必须具有相应的操作权,即验证用户是否具有操作权限。

2、用户身份认证类别

SQL Server 的用户有两种类型:

1)Windows 授权用户:来自于Windows的用户或组。

2)SQL授权用户:来自于非Windows的用户,称其为SQL用户。

五、实验内容及步骤

附加数据库S_T

1、建立SQL Server登录账户。要求创建登录账户S1,S2,S3

创建步骤如下:

第一步:鼠标右键点击安全性中的登录名,在弹出的快捷菜单中选择新建登录名。

图1-1 新建登录名

第二步:在展开的新建登录名对话框之中的常规选项页里面,键入登录名为S1,选择SQL Server 身份认证,并输入密码和确认密码,将强制实施密码策略的选项去掉。最后在状态选项中确定授权都已经授权和启用后,点击确定建立S1登陆账户。

图1-2 创建登录账户对话框

第三步:测试,用该登陆账户连接SQL SERVER 。

2、建立数据库用户账户。要求在S_T 创建登录账户U1,U2,U3分别关联登录账户S1,S2,S3

第一步:在S_T 数据库的安全性,点击鼠标右键选择新建用户名如图1-3所示

图1-3 新建用户

第二步:打开新建用户对话框,填写用户名和关联的登录名,如图1-4所示。点击确定完成新建用户账户。

第三步:测试,用新建的登录名(S1)和用户名(U1)登陆SQL SERVER ,查看是否能访问数据库S_T 。为什么?

图1-4 新建用户账户对话框

3、使用grant和revoke进行授权和权力收回。操作完成后查看已授权的用户是否真正具有授予的数据操作权力了;收回权力后的用户是否丧失了收回的数据操作的权力。

1)以Administration身份登录SQL SERVER,为U1授予查询student表的权力,同时允许U1将该权利授予其他用户。为U3授予更新SC表中grade值的权力。以S1登录SQL SERVER,测试用户U1是否有权力查询S_T数据库中的Student 表?

以S3登录SQL SERVER,测试用户U3是否有权力更新SC表中grade的值?执行如下两个语句:

Update sc set grade=0 where sno=‘0301101’

Update sc set grade=0

那个语句可以执行成功?根据系统提示,思考原因。

2)U1为U2授予查询student表的权力,但不允许U2将该权力授予他人。

以S2登录SQL SERVER,测试用户U2是否有权力查询S_T数据库中的Student 表?测试用户U2是否有为U3授予查询Student表的权力?

3)收回U1,U2查询student表的权力

4)收回U3修改SC表中grade的权力。

思考:以什么身份登陆SQL SERVER才能收回U1,U2,U3的权力?

如何测试用户U1,U2,U3的权限是否收回?

*5)为U1授予在S_T数据库中创建表的权力。

测试U1是否具有在S_T数据库中创建表的权力?

6)要使用户u2只具有查询、增删改student表中’cs’系学生信息的权力,该如何实现?

7)收回用户u2查询、增删改student表中’cs’系学生信息的权力,该如何实现?

4、应用角色来简化授权过程

1)以Administration身份登录数据库服务器,创建登录账户S4及用户账号U4,角色R1(数据库角色)。

2)为角色R1授予查询student,向student表插入记录的权力。

3)将角色R1授权给用户U4。

exec sp_addrolemember 'r1','u4

以S4登陆SQL SERVER,测试U4是否有权力查询student、向student表插入记

录?

4)从角色R1中收回向student表插入记录的权力。

思考:测试U4还有哪些权力?

5)收回U4的R1角色

exec sp_droprolemember 'r1','u4'

思考:测试U4还有哪些权力?

六、实验要求

在每次实验前,学生必须根据实验指导书设计出实验方案(程序和实验步骤);在实验过程中要求独立进行程序调试和排错,学会使用在线帮助来解决实验中遇到的问题,同时运用理论的知识来分析问题和解决问题,记录下实验过程和结果。上机结束后写出实验报告,并对实验过程进行分析和总结。

实验六、数据库设计

一、实验目的

1、理解数据库设计的基本步骤,初步掌握小型数据库应用系统数据库设计的基本方法。

2、培养学生根据系统的功能要求分析问题,通过查找资料、讨论等多种方法解决问题的能力以及团队协作精神。

二、实验类型

综合型

三、实验环境

CPU 2.0 GHz, 1.0 G Memory;Windows2003, SQL Server 2005。

四、实验内容及步骤

1、系统的需求分析。

仔细查看选定系统的功能要求,结合实际情况,通过小组内部讨论和查找资料来进一步细化系统需求,要求根据系统功能分析实现这些系统功能需要用到哪些数据。

注意:系统的功能不需要实现,但是要根据这些功能需求,分析需要的数据。

2、数据库的概念结构设计。

根据需求分析的结果,确定该系统的概念模型。即根据分析出的功能需求提炼需要的实体、属性和联系,画出局部和整体的ER图。

注意:ER图的绘制一定要结合系统的功能要求来确定。

3、数据库逻辑结构设计。

根据概念设计的结果,确定该系统的逻辑模型,应用规范化的原理对整个逻辑模型进行优化。分析关系模式中每个属性的含义,选择合理的数据类型,标识出每个关系模式的主码。分析表间关系,标识出关系模式的外码。

注意:这部分工作的内容比较多,一步一步完成。

4、数据库实现。根据逻辑结构的设计结果,用SQL语言在SQL Server 2005中实现该数据库,注意实现数据完整性。

5、建立必要的视图。

6、将整个需求分析、数据库设计、数据库实现的过程写成实验报告。

五、实验报告内容和格式要求

《XXXXX系统》数据库设计报告

一、需求分析

文字描述

二、概念结构设计

ER图

三、逻辑结构设计

转化后的关系模式(用表格的形式表示)

如:

四、数据库实现

创建数据表、定义约束的SQL语句

向数据表添加数据的SQL语句

建立视图的SQL语句

五、心的体会

完成本次实验的心得体会(100字以上)

六、备选系统介绍

1、图书销售管理系统

调查新华书店图书销售业务,设计的图书销售管理系统主要包括图书管理、进货、销售、统计功能。具体说明如下:

(1)图书管理:用户通过该系统能够对图书详细信息进行维护,包括添加、修改、删除。对所有的图书进行分类,类别信息可以增加、修改、删除。每个类别有多种图书,每种图书属于一个类别。顾客可以通过该系统自主查询在库的图书信息。

(2)进货:根据某种书籍的库存量及销售情况确定进货数量,填写进货单,每张进货单对应一个供应商,同一供应商也可以出现在不同的进货单中,一份进货单可包含多种图书,每种图书会出现在多份进货单中,保存进货单成功后,系统会自动修改图书库存量。

《数据库原理与应用》实验题目及答案

《数据库原理与应用》实验作业布置 实验1 数据库的建立修改与删除 完成以下实验报告: 《数据库原理与应用》实验报告 实验1 数据库的建立修改与删除 二、实验环境 操作系统:Windows XP。 数据库管理系统:MS SQL Server 2000 或MS SQL Server 2008。 三、实验目的 1.熟悉SQL Server 2000上机环境,学会SQL Server 2000“企业管理器”以及“查询分析器”的启动与退出;或熟悉MS SQL Server 2008上机环境,学会SQL Server Management Studio的启动与退出。 2.掌握建立数据库的两种方法。 3.掌握查看和修改数据库的两种方法。 4.掌握删除数据库的两种方法。 四、实验内容 (一) 规定内容 1. 在用户方便的存储空间上建立存放用户数据库的文件夹。本实验在D盘根目录下建立文件夹:D:\SQL2000DB,再建立存放T_SQL源代码的文件夹:D:\SQL2000DB\T_SQL 2.利用企业管理器创建学生课程数据库ST,参数如表1.1所示。 3.利用企业管理器查看ST数据库的属性。 4.使用T-SQL语句建立学生-课程数据库ST,参数如表1.1所示。 5.使用T-SQL 语句建立数据库JXDB,参数如表1.2所示。

6.使用T-SQL语句为数据库JXDB添加文件组JX_Group2,并为此文件组添加1个数据文件JXDB_Data4;添加1个日志文件JXDB_log1。参数由用户自己设定。 7.使用T-SQL语句修改数据库JXDB中次数据文件JXDB_Data4的属性:文件初始大小改为5M,增长方式改为每次按20%增长。删除日志文件JXDB_log1。 8.使用T-SQL语句删除数据库JXDB。 (二) 自定内容 五、出现的问题及解决方法 实验2 表结构的建立修改删除及完整性约束条件定义 完成以下实验报告: 《数据库原理与应用》实验报告 一、实验题目 实验2 表结构的建立修改删除及完整性约束条件定义 二、实验环境 操作系统:Windows XP。 数据库管理系统:MS SQL Server 2000或MS SQL Server 2008。 三、实验目的 1.掌握建立、修改与删除表结构的两种方法。 2.掌握定义完整性约束条件的方法。 3.掌握利用企业管理器和使用T-SQL语句向表中插入记录的方法。 四、实验内容 (一) 规定内容 1.对学生课程数据库ST进行完整性约束条件规划设计。 设计结果如表2.1所示。

数据库原理实验报告

数据库原理 实验报告 系别电子信息系 专业计算机科学与技术班级学号4080522 姓名龚敏 指导教师李爱英

一.概要设计 1.教学数据库各表的关系模式:(加下线的属性为主键) 学生 (学号,姓名,性别, 出生日期,所在系) 英文缩写对照:student(s_no,s_name,s_sex,s_age,s_birthday,s_department) 课程 (课程号,课程名,学分) 英文缩写对照:course(c_no,c_name,c_score) 教师 (职工号,姓名,性别,职称) 英文缩写对照:teacher(t_no,t_name,t_sex,t_duty) 选课 (学号,课程号,成绩) 英文缩写对照:choice(s_no,c_no,score) 讲授 (职工号,课程号) 英文缩写对照:teaching(t_no,c_no) 2.教学数据库E-R 图: 实体:课程,学生,选课 联系:选课(学生同课程之间多对多的联系m:n),讲授(教师同课程之间多对多的联系m:n)。 二.逻辑设计 代码: use master go create database stu go use stu go n m m n 课程 教师 讲授 选课 学号 姓名 性别 出生日期 成绩 职工号 姓名 性别 职称 学分 课程号 课程名 学生

create table student (s_no char(8) not null primary key, s_name char(8) not null , s_sex varchar(8) not null, s_birthday smalldatetime not null, s_department varchar(13) not null) drop table student use stu go create table teacher (t_no char(8) not null primary key, t_name char(8) not null, t_sex varchar(8) not null, t_duty char(8) not null) create table course (c_no char(8) not null primary key, c_name char(8) not null, c_score varchar not null) create table choice( s_no char(8) not null primary key, c_no char(8) not null primary key, score varchar not null) create table teaching( t_no char(8) not null primary key, c_no char(8) not null primary key) insert student values('101','袁敏','女','1982-2-3','机电') insert student values('102','李志强','男','1983-4-5','计算机') insert student values('103','张亮','男','1984-10-9','建筑') insert student values('104','李平','女','1984-5-6','计算机') insert student values('105','王丽','女','1983-2-1','机电') insert student values('106','刘明耀','男','1982-4-16','计算机') select* from student insert course values('1011','C语言','6') insert course values('1012','数据结构','4') insert course values('1013','微机原理','6') insert course values('1014','数字电路','5') insert course values('1015','高等数学','6') select* from course insert teacher values('0511','张大维','男','副教授') insert teacher values('0512','林楠','女','讲师') insert teacher values('0513','韩晓颖','女','副教授') insert teacher values('0514','李辉','男','讲师') insert teacher values('0515','孙丽','女','助教') select* from teacher insert choice values('101','1011','82.5') insert choice values('101','1012','79') insert choice values('102','1012','92.5') insert choice

数据库原理实验报告(1)

南京晓庄学院 《数据库原理与应用》课程实验报告 实验一 SQL Server 2005常用服务与实用工具实验 所在院(系):数学与信息技术学院 班级: 学号: 姓名:

1.实验目的 (1)了解Microsoft 关系数据库管理系统SQL Server的发展历史及其特性。 (2)了解SQL Server 2005的主要组件、常用服务和系统配置。 (3)掌握Microsoft SQL Server Management Studio 图形环境的基本操作方法。了解使用“SQL Server 2005 联机从书”获取帮助信息的方法;了解“查询编辑器”的使用方法;了解模板的使用方法。 2.实验要求 (1)收集整理Microsoft关系数据库管理系统SQL Server的相关资料,总结其发展历史及SQL Server 2005主要版本类别和主要功能特性。 (2)使用SQL Server配置管理器查看和管理SQL Server 2005服务。 (3)使用Microsoft SQL Server Management Studio连接数据库;使用SQL Server帮助系统获 得所感兴趣的相关产品主题/技术文档。 (4)使用Microsoft SQL Server Management Studio“查询编辑器”编辑并执行Transact-SQL 查询语句。 (5)查看Microsoft SQL Server 2005模板,了解模板的使用方法。 (6)按要求完成实验报告。 3.实验步骤、结果和总结实验步骤/结果 (1) 简要总结SQL Server系统发展历史及SQL Server 2005主要版本类别与主要功能特性。

数据库原理实验5

福建农林大学资源与环境学院实验报告 系:国土资源专业:空间信息与数字技术年级:2016 姓名:任然学号:3165706014 实验室号____507__ 计算机号44 实验时间:2018年5日指导教师签字:成绩: 报告退发(订正、重做) 实验名称:触发器、存储过程操作实验 一、实验目的和要求 (1)掌握SQL Server中的触发器的使用方法; (2)掌握存储过程的操作方法。 二、实验内容和原理 1. 基本操作实验 在读者-图书数据库中用Transact-SQL语句描述下列功能: (1)在读者表上建立一个DELETE类型的触发器lianxi_del,触发动作是显示信息(已删除读者表中的数据),执行下列语句: create trigger lianxi_del on 读者 for delete as print ‘已删除读者表中的数据’ (2)建立一个查询指定读者号的阅读信息的存储过程List_jy,输入参数为读者号,如果没有输入读者号,则要输出提示信息。建立这个存储过程的语句如下所示。 create procedure List_jy @p_dzh char(5) = null as if @p_dzh is null begin print ‘请输入一个读者号’ return end else select 编号,姓名,书名,借阅时间 from 读者,借阅,图书 where 读者.编号=借阅.读者编号 and 借阅.书号=图书.书号 and 读者.编号=@p_dzh 2. 提高操作实验 在学生-课程数据库中用Transact-SQL语句描述下列功能: (1)为学生表建立一个名TRI_INSERT的INSERT触发器。功能是当用户向学生表添加数据时,同时也把这些数据添加到stu表中。其中:学生表和表stu的结构相同。 (2)为学生表建立一个名TRI_DELETE的DELETE触发器。功能是当用户从学生表

数据库原理》实验指导书

《数据库原理》实验指导书

目录 实验一SQL SERVER2000数据库的使用 (1) 实验二创建数据库和数据表 (5) 实验三SQL技术 (14) 实验四实现视图 (22) 实验五创建和维护索引 (27) 实验六触发器管理 (32) 实验七数据的备份与恢复 (35) *实验八SQL Server2000安全管理 (40) 实验一 SQL SERVER2000数据库的使用 实验目的 1. 了解Microsoft SQL Server安装方法与步骤 2. 了解SQL Server 2000常用管理工具 3. 初步熟悉系统提供的学习数据库 4. 掌握在线手册的使用 实验内容 一、安装过程 操作要求:本地安装SQL Server 2000,明确安装步骤以及注意事项。 在WindowsXP或Windows2000 Professional操作系统平台下安装SQL Server 2000个人版。 系统安装完毕后,在开始菜单“程序”中新增了如图1.1所示的菜单。 图1.1程序组菜单 二、使用服务管理器 操作要求:对已安装的本地SQL Server服务器,完成启动、暂停和停止操作。 操作1:执行“开始→程序→Microsoft SQL Server→服务管理器”菜单命令,或双击桌面任务栏上“服务管理器”图标按钮,打开“服务管理器”窗口,如图1.2所示。 注意:SQL Server服务管理器用交通信号灯比喻SQL Server的启动()、停止()和暂停()。

图1.2 “服务管理器”窗口 操作2:在窗口中的“服务器”栏,选择要启动的数据库服务器(取决于所安装的实例),在“服务”中选择“SQL Server”,单击“开始/继续”按钮,启动SQL Server。 注意:选择“当启动OS时自动启动服务”复选按钮,可在每次Windwos启动时自动启动SQL Server。 操作3:单击“暂停”按钮,观察信号灯变化;单击“停止”按钮,观察信号灯变化;再次单击“开始/继续”按钮。 操作4:关闭服务管理器窗口(但SQL Server服务仍在运行,任务栏上的“ ” 图标表示服务已启动)。 三、使用企业管理器 操作要求:启动SQL Server的“企业管理器”,查看已安装的数据库实例中系统数据库情况。(如果条件许可,并尝试在企业管理器中通过向导“新建SQL Server注册”,连接SQL Server教学远程数据库服务器。) 图1.3 “企业管理器”窗口 操作1:执行“开始→程序→Microsoft SQL Server→企业管理器”菜单命令,打开“企业管理器”,如图1.1所示。

数据库原理课后题答案

第1章 1.试述数据、数据库、数据库系统、数据库管理系统的概念。 答:(1)数据:描述事物的符号记录成为数据。数据的种类有数字、文字、图形、图像、声音、正文等。数据与其语义是不可分的。 (2)数据库:数据库是长期储存在计算机内的、有组织的、可共享的数据集合。数据库中的数据按照一定的数据模型组织。描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。 (3)数据库系统:数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发人具)、应用系统、数据库管理员构成。 (4)数据库管理系统:数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。DBMS的主要功能包括数据定义功能、数据操作功能、数据库的建立和维护功能。 6.试述数据库系统三级模式结构,这种结构的优点是什么? 答:数据库系统的三级模式机构由外模式、模式和内模式组成。 外模式,亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。 模式亦称逻辑模式,是数据库中全体数据呃逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的内部逻辑结构,通常是模式的子集。

内模式,亦称存储模式,是数据在数据库内部的表示,即对数据的物理结构和存储方式的描述。 数据库系统的三级模式是对数据的三个抽象级别,它对数据的具体组织留给DBMS管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。 为了能够在内部实现这三个抽象层次的联系和转换,数据库系统在这三级模式之间提供了两层映像:外模式∕模式映像和模式∕内模式映像。正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。 7.定义并解释下列术语。 外模式:亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。 内模式:亦称存储模式,是数据在数据库内部的表示,即对数据的物理结构和存储方式的描述。 模式:亦称逻辑模式,是数据库中全体数据逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的内部逻辑结构,通常是模式的子集。 DDL:数据库定义语言,用来定义数据库模式、外模式、内模式的语言。DML:数据操纵语言,用来对数据库中数据进行查询、插入、删除和修改的语句。 8.什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么

数据库原理实验报告分析

2013级数据库原理实验报告 专业:_______计算机___ 班级:________________ 学号:______________ 姓名:_______________ 2015年5月

实验一 SQL Server 2005基本操作 一、实验目的 了解SQL Server 2005组件; 了解SQL Server数据库组成; 掌握SQL Server 2005界面基本操作。 二、实验内容 (1)开始->程序->Microsoft SQL Server 2005-> SQL Server Management Studio,打开后进入到SQL Server 2005主体界面 (2)点击?数据库?前面的?+?,可以展开查看数据库,并且可以继续展开下级目录,查看数据库中的表、视图等。 (3)了解SQL Server 2005菜单栏的一些主要工具的使用。 (4)学生动手操作SQL Server 2005,打开数据库,打开表,打开查询界面;查看数据库的属性、表的属性等。 三、实验总结 进行这次实验有遇到什么问题?怎么解决的? 答:此次实验我们一步一步按照实验内容操作的,基本上没有遇到问题。

实验二数据定义 一、实验目的 掌握SQL Server 2005的数据库创建; 掌握SQL Server数据定义语言; 掌握SQL Server 2005数据定义的SQL语言定义与管理器定义两种方式。 二、实验内容 (1)创建、修改、删除数据库。 创建要求:数据库Employee中包含一个数据库文件Empdat1.mdf和一个日志文件Emplog.ldf。其中,数据文件大小为10MB,最大为50MB,以5MB速度增长;日志文件大小为5MB,最大为25MB,以5%速度增长。 修改要求:增加第二个数据库文件Empdat2.ndf,其中,数据文件大小为5MB,最 大为25MB,以2MB速度增长。 (2)利用SQL创建人员表person、月薪表salary及部门表dept。 见上页图 要求:按表2-1、表2-2及表2-3中的字段说明创建。

《数据库原理》实验7

实验七:数据库的安全性 一、实验目的 1.掌握Windows NT认证模式下数据库用户帐号的建立与取消方法; 2.掌握混合模式下数据库用户帐号的建立与取消方法; 3.掌握数据库用户权限的设置方法; 4.熟悉数据库数据库用户帐号的权限分配、回收等方法; 5.了解数据库角色的分类、作用及使用方法。 二、实验环境 已安装SQL Server 2005 企业版的计算机; 具有局域网环境,有固定IP; 三、实验学时 2学时 四、实验要求 1.了解SQL Server 2005系统安全; 2.熟悉数据库用户、服务器角色及数据库角色的用法; 3.完成实验报告; 五、实验内容及步骤 以系统管理员身份登录到SQL Server服务器,在SQL Server2005界面中实现以下操作,并独立写出部分题目的程序代码; 1.在当前计算机中增加一个用户zhang和cheng,密码为secret。使此用户通 过winows nt模式下登录SQL Server服务器,登录名分别为zhang和cheng; 2.新建以混合模式登录SQL Server服务器的用户登录名为stu1、stu2和stu3, 登录密码为secret,默认登录数据库为stu; 3.将帐号zhang添加为数据库stu的用户,用户名为zhang; 4.在数据库stu中创建用户stu1、stu2和stu3,登录帐号分别为stu1、stu2 和stu3; 5.给数据库用户zhang赋予创建数据库的权限; 6.给数据库用户stu1赋予对sc表进行插入、修改、删除操作权限; 7.给数据库用户stu2和stu3赋予对student表、course表所有操作权限及查 询sc的操作权限,并允许再授权给其他用户; 8.收回数据库用户stu2对student表和course表的删除操作的权限; 9.若一个小组共5个成员,他们对数据库stu具有相同的操作权限,具体权限 如下: 1)对于student、course表只能进行数据查询;

数据库实验报告

合肥师范学院实验报告册 2014 / 2015 学年第2学期 系别计算机学院 实验课程数据库原理 专业 班级 姓名 学号 指导教师

实验一——数据库基本操作 一、实验目的 1.熟悉MS SQL SERVER运行界面,掌握服务器的基本操作。 2.掌握界面操作方法完成用户数据库建立、备份和还原。 3.建立两个实验用的数据库,使用企业管理器和查询分析器对数据库和表进行基本操作。 二、实验预习内容 在认真阅读教材及实验指导书的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。 1.熟悉SQL SERVER 2000 的运行环境,练习服务器基本操作:打开、停止、关闭。 2.使用SQL SERVER 2000 中的企业管理器完成以下任务。 数据库名称:STC 表:STU(sno char(9), sname varchar(50), ssex char(2) , sage int, sdept char(2) ); COUTSES(cno char(3), cname varchar(50), cpno char(3), credit int ); SC(sno char(9), cno char(3), grade int ); 说明:以上为表结构,以sno char(9)为例,说明sno属性设置为字符类型,宽度为9,int指整型数据。 1)建立数据库STC,分别建立以上三张表,并完成数据录入。(表结构及数据参见教材)2)分析并建立各表的主码,用下划线在上面表结构中标出主码。 3)建立各表之间的关联,请简述操作步骤。 (1)CREATE TABLE Stu ( sno char(9), sname varchar(50), ssex char(2), sage int, sdept char(2) ); CREATE TABLE COURSE ( cno char(3), cname varchar(50), cpno char(3), credit int); CREATE TABLE SC ( sno char(9), cno char(3), grade int); 4)参考实验指导书的【第5章数据库的备份和还原】,使用企业管理器对数据库STC 进行备份,并尝试在个人电脑与机房电脑上进行还原,请简述备份、还原操作的步骤。

数据库原理B实验报告完整版1-3

实验一 认识DBMS系统 日期 2011-3-23一、实验目的 1.通过对某个商用数据库管理系统的使用,了解DBMS的工作原理和系统构架。 2.熟悉对DBMS的操作 3.搭建今后实验的平台 二、实验原理 企业管理器是SQL Server中最主要的工具,使用它基本上可完成SQL Server的所有管理操作,如数据库的创建和管理、数据表的创建和管理、数据库安全管理等,在本书第五课中将对其作详细介绍。 查询分析器主要用于创建和执行SQL命令,以完成数据库的查询和管理工作。查询分析器和企业管理器是SQL Server的两大主要工具。 服务管理器主要用于启动、暂停、停止和检查本地服务的状态。SQL Server提供如下服务: SQL Server服务:该服务提供管理服务器中的所有数据库、执行T-SQL程序、执行存储过程、处理分布式查询等服务。必须启动该服务,用户才能通过客户端访问SQL Server服务器中的数据。 SQL Server Agent服务:该服务用于执行作业、监视SQL Server以及激发警报。SQL Server Agent允许自动执行某些管理任务的服务,所以必须启动SQL Server Agent 服务,才能使本地或多服务器的管理任务自动运行。 Microsoft Search服务:提供SQL Server全文检索功能。 Distributed Transaction Coordinator服务:提供Microsoft分布式事务处理功能。 MSSQL Server OLAP Service服务:支持Analysis Services的各项功能,该服务在安装了支持Analysis Services才有。 三、实验仪器和设备 1. 计算机 2. SQL Server 2000 四、预习要求 复习已经讲过的SQL Server 2000的基本工具使用方法。

数据库原理课程设计指导书

数据库原理课程设计指导书 课程名称:数据库原理课程设计 课程编号:40406051 课程类型:必修 学时:1周 学分:1 适用专业:计算机科学与技术、网络工程 编制人:数据库原理课程组 一、课程设计的目的和意义 《数据库原理课程设计》是实践性教案环节之一,是《数据库原理》课程的辅助教案课程。通过课程设计,使学生掌握数据库的基本概念,结合实际的操作和设计,巩固课堂教案内容,使学生掌握数据库系统的基本概念、原理和技术,将理论与实际相结合,应用现有的数据建模工具和数据库经管系统软件,规范、科学地完成一个小型数据库的设计与实现,把理论课与实验课所学内容做一综合,并在此基础上强化学生的实践意识、提高其实际动手能力和创新能力。 二、设计要求: 通过设计一个完整的数据库,使学生掌握数据库设计各阶段的输入、输出、设计环境、目标和方法。熟练掌握两个主要环节——概念结构设计与逻辑结构设计;熟练的使用SQL语言实现数据库的建立、应用和维护。集中安排1周进行课程设计,以小组为单位,一般2~3人为一组,组内自由分工协作。教师讲解数据库的设计方法以及布置题目,要求学生根据题目的需求描述,进行实际调研,提出完整的需求分析报告,建立概念模型、逻辑模型、物理模型,在物理模型中根据需要添加必要的约束、视图、触发器和存储过程等数据库对象,生成创建数据库的脚本,提出物理设计的文档,最后应用某种宿主语言完成主要功能设计和实现。 要求如下: 1、要充分认识课程设计对培养自己的重要性,认真做好设计前的各项准备工作。 2、既要虚心接受老师的指导,又要充分发挥主观能动性。结合课题,独立思考,努力钻研,勤于实践,勇于创新。 3、独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容,否则成绩以不及格计。 4、课程设计期间,无故缺席按旷课处理;缺席时间达四分之一以上者,其成绩按不及格处理。 5、在设计过程中,要严格要求自己,树立严肃、严密、严谨的科学态度,必须按时、按质、按量完成课程设计。 6、小组成员之间,分工明确,但要保持联系畅通,密切合作,培养良好的互相帮助和团队协作精神。 三、课程设计选题的原则 课程设计题目以选用学生相对比较熟悉的业务模型为宜,要求通过本实践性教案环节,能较好地巩固数据库的基本概念、基本原理、关系数据库的设计理论、设计方法等主要相关知识点,针对实际问题设计概念模型,并应用现有的工具完成小型数据库的设计与实现。具体选题见附录。 四、课程设计的一般步骤 课程设计大体分五个阶段: 1、选题与搜集资料:根据分组,选题目,在小组内进行分工,进行系统调查,搜集资料。

《数据库原理与应用》实验报告书修改版(1)答案

《数据库原理与应用》实验报告书修 改版(1)答案 《数据库原理与应用》实验报告书班级:学号:姓名:教师:郑先容医药信息工程学院·数据决策2012年2月目录实验一利用ACCESS 创建数据库及熟悉SQL Server开发环境... 2 实验三数据库、表的创建............................................................... ... 6 实验五连接查询和嵌套查询................................................................ 12 实验七数据的插入、修改、删除.................................................... 18 实验九SQL Server数据库的安全性控制........................................ 21 实验十一熟悉Power Designer数据库设计软件................................ 24 实验十三Transact-SQL编

程................................................................ 27 实验十五存储过程的使用............................................................... ..... 30 第十章数据库的恢复技术作业............................................................ 33 《数据库原理与应用》实验报告实验一利用ACCESS创建数据库及熟悉SQL Server 开发环境一、实验目的1、熟知机房用机安全规则和实验报告的书写。2、掌握SQL Server 2005的安装,卸载以及相关服务的启动、退出。3、熟悉SQL Server Management Studio环境。4、掌握创建服务器组合注册服务器。5、初步了解数据库的概念; 6、初步了解SQL Server联机丛书的使用。 7、用ACCESS创建数据库,体会数据库的功能。注意:每次实验的指导视频,上课所需要的软件、数据库还有ppt。都可以在ftp://的“数据决策”->“数据库”->“2011-2012”文件夹下找到,以后每次实验相关的文件和数据

2016数据库原理实验指导书

信息工程学院 数据库原理实验指导书二零一六年五月

目录 实验一SQL SERVER 2005的安装与启动 (1) 实验二数据库的操作 (11) 实验三SQL SERVER2005查询编辑器 (23) 实验四SQL语言的DDL (31) 实验五SQL语言的DML初步 (34) 实验六DML的数据查询 (36) 实验七数据库综合设计 (40)

实验一SQL Server 2005的安装与启动 一、实验目的 SQL Server 2005是Mircosoft公司推出的关系型网络数据库管理系统,是一个逐步成长起来的大型数据库管理系统。 本次实验了解SQL Server 2005的安装过程,了解SQL Server 2005的启动,熟悉SQL Server 2005软件环境。学会安装SQL Server 2005。 二、实验内容 1.安装SQL Server 2005 (1)将SQL Server 2005(中文开发版)安装盘插入光驱后,SQL Server 2005安装盘将自动启动安装程序;或手动执行光盘根 目录下的Autorun.exe文件,这两种方法都可进行SQL Server 2005的安装。出现如下画面。 (2)选中“运行SQL Server Client 安装向导”进行安装,弹出【最终用户许可协议】界面。

(3)选中【我接受许可条款和条件】选项,单击【下一步】按钮,进入【安装必备组件】界面。 (4)组件安装完成后,单击【下一步】按钮,进入【欢迎使用Microsoft SQL Server 安装向导】界面。

(5)单击【下一步】按钮,进入【系统配置检查】界面。检查完毕将显示检查结果。 (6)检查如果没有错误,单击【下一步】按钮,进入【注册信息】界面。

数据库原理实验指导书 (1)

《数据库原理实验指导书》 河南科技大学电子信息工程学院 赵海霞

目录 实验规则 (2) 实验报告要求 (3) 基本实验方法 (3) 实验环境 (3) 实验一:数据定义及更新语句练习 (4) 实验二:简单查询和连接查询 (6) 实验三:分组查询和嵌套查询 (8) 实验四:视图操作和数据控制 (10) 实验五:触发器和存储过程 (12) 选作题目 (14)

实验规则 为了顺利完成实验教学任务,确保人身设备安全,培养严谨、踏实、实事求是的科学作风和爱护国家财产的优良品质,特制定以下实验规则: 1、实验纪律 (1)在实验室不得做和实验无关的事情。 (2)遵守纪律,不迟到,不旷课。 (3)不能拆卸硬件,更不能拿走实验设备或仪器。 (4)保持实验室安静、整洁,爱护公物。 2、实验过程 (1)预习实验内容。自行设计SQL语句。 (2)上机操作。每执行一句记录执行情况,主要是错误信息和错误原因。 (3)检查操作结果是否正确。 (4)根据实验过程的记录书写实验报告。

实验报告要求 1、报告用纸采用统一的河南科技大学实验报告用纸,不得用别的纸张代替。 2、实验报告封面内容 实验名称:(如实验一数据库创建) 班级名称:(如计科101班) 学生学号: 学生姓名: 实验时间: 3、实验报告内容 见各具体实验项目的要求。 基本实验方法 本实验要求熟悉SQL Server环境和数据库的相关知识。 实验环境 Microsoft SQL Server2000

实验一:数据定义及更新语句练习 一、实验目的:熟练掌握用SQL语句实现数据库和基本表的创建、数据的更新。 二、预习要求:实验前复习讲授过的有关创建数据库、基本表的SQL语句,预 习SQL Server2000环境,特别是资源管理器和查询分析器的相关用法。 三、实验内容: (一)用SQL语句建立如下mySPJ数据库,包括S,P,J,和SPJ四个基本表(教材第二章习题5中的四个表),要求实现关系的三类完整性。 S(SNO,SNAME,STA TUS,CITY); P(PNO,PNAME,COLOR,WEIGHT); J(JNO,JNAME,CITY); SPJ(SNO,PNO,JNO,QTY) 供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成。 零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成。 工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成。 供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,表示某供应商供应某种零件给某工程项目的数量为QTY。(二)分别使用插入、删除、修改的方式更新基本表中的数据。 四、实验方法和步骤: (一)使用Microsoft SQL Server企业管理器和查询分析器建立数据库mySPJ: 1.打开“开始->程序->Microsoft SQL Server->企业管理器”; 2.在企业管理器左边的树标签中依次打开“Microsoft SQL Server-> SQL Server 组->(local)(Windows NT)->数据库”, (local)(Windows NT)前的红色标记转化为绿色标记表明NT服务已启动; 3.从企业管理器的“工具”菜单中选择“SQL 查询分析器”,打开查询分析器后,在其窗口书写创建数据库mySPJ的SQL语句,点击执行按钮(或F5键)执行该SQL

数据库原理实验一

电子信息工程学系实验报告 课程名称: 《数据库原理》 实验项目名称:表的创建和管理 实验时间: 班级: 姓名: 学号: 实 验 目 的: (1)了解SQL Server 的基本数据类型。 (2)学会在企业管理器中创建数据库及表。 (3)学会使用T-SQL 语句创建数据库及表。 (4)学会在企业管理器中修改表的定义。 (5)学会使用SQL 语句修改表的定义 实 验 环 境: winXP +Sql server 2000 实 验 内 容 及 过 程: (1)用企业管理器,建立的数据库SCHOOL ,建立如书本75页的P,S,J,SPJ 四张表,并添加数据。 (2)用企业管理器删除所建立的SPJ 和J 两张表。 (3)在查询分析器中用sql 语句删除表S 和表P,S ,删除数据库SPJ 。 (4)在查询分析器中用sql 语句创建数据库SPJ ,用SQL 语句创建各书本75页的P,S,J,SPJ 四张表,用insert 命令分别向四张表里面添加如75页所示的数据。 (5)将以上用到的SQL 命令以 “实验一.SQL ”文件的形式保存。 (6)用企业管理器备份数据库SPJ 到备份文件SPJ.bak 。 实 验 结 果 及 分 析: (1)

(2) (3) DROP TABLE P; DROP TABLE S; DROP DA TABASE SPJ; (5)

实验心得: 附录: CREATE DATABASE SPJ ON ( NAME=pSPJ, FILENAME='H:\SQL\MSSQLDATA\mydb.mdf',SIZE=10MB,MAXSIZE=100MB,FILEGROWTH=1 MB ) LOG ON ( NAME=logSPJ, FILENAME='H:\SQL\MSSQLDATA\mydb.ldf',SIZE=100MB,MAXSIZE=1000MB,FILEGROWTH= 10MB ) go use SPJ CREATE TABLE S( Sno CHAR(2) NOT NULL, --供应商代码不能为空 Sname V ARCHAR(20), Status int , City V ARCHAR(20) , CONSTRAINT S_pk PRIMARY KEY(Sno) --应商代码为主键 ); CREATE TABLE P( Pno CHAR(2) NOT NULL, --零件代码不能为空

《数据库原理》实验4

实验四:数据库综合查询 一、实验目的 1.掌握SELECT语句的基本语法和查询条件表示方法; 2.掌握查询条件种类和表示方法; 3.掌握连接查询的表示及使用; 4.掌握嵌套查询的表示及使用; 5.了解集合查询的表示及使用。 二、实验环境 已安装SQL Server 2008 企业版的计算机; 具有局域网环境,有固定IP; 三、实验学时 2学时 四、实验要求 1.了解SELECT语句的基本语法格式和执行方法; 2.了解连接查询的表示及使用; 3.了解嵌套查询的表示及使用; 4.了解集合查询的表示及使用; 5.完成实验报告; 五、实验内容及步骤 以数据库原理实验2数据为基础,请使用T-SQL 语句实现进行以下操作: 1.查询以‘DB_’开头,且倒数第3个字符为‘s’的课程的详细情况; 2.查询名字中第2个字为‘阳’的学生姓名和学号及选修的课程号、课程名; 3.列出选修了‘数学’或者‘大学英语’的学生学号、姓名、所在院系、选修 课程号及成绩; 4.查询缺少成绩的所有学生的详细情况; 5.查询与‘张力’(假设姓名唯一)年龄不同的所有学生的信息; 6.查询所选课程的平均成绩大于张力的平均成绩的学生学号、姓名及平均成 绩; 7.按照?学号,姓名,所在院系,已修学分?的顺序列出学生学分的获得情况。 其中已修学分为考试已经及格的课程学分之和; 8.列出只选修一门课程的学生的学号、姓名、院系及成绩; 9.查找选修了至少一门和张力选修课程一样的学生的学号、姓名及课程号; 10.只选修?数据库?和?数据结构?两门课程的学生的基本信息;

11.至少选修?数据库?或?数据结构?课程的学生的基本信息; 12.列出所有课程被选修的详细情况,包括课程号、课程名、学号、姓名及成绩; 13.查询只被一名学生选修的课程的课程号、课程名; 14.检索所学课程包含学生‘张向东’所学课程的学生学号、姓名; 15.使用嵌套查询列出选修了?数据结构?课程的学生学号和姓名; 16.使用嵌套查询查询其它系中年龄小于CS系的某个学生的学生姓名、年龄和 院系; 17.使用ANY、ALL 查询,列出其他院系中比CS系所有学生年龄小的学生; 18.分别使用连接查询和嵌套查询,列出与‘张力’在一个院系的学生的信息; 19.使用集合查询列出CS系的学生以及性别为女的学生名单; 20.使用集合查询列出CS系的学生与年龄不大于19岁的学生的交集、差集; 21.使用集合查询列出选修课程1的学生集合与选修课程2的学生集合的交集; 22.思考题:按照课程名顺序显示各个学生选修的课程(如200515001 数据库数 据结构数学); 六、出现问题及解决办法 如:某些查询操作无法执行,如何解决? 1、查询以‘DB_’开头,且倒数第三个字符为‘s’的课程的详细情况 select * from course where cname like 'DB\_%s__' 2、查询名字中第二个字为“阳”的学生姓名和学号及选修的课程号、课程名 select student.sno ,student.sname ,https://www.wendangku.net/doc/b410612082.html,o,cname from student,course,sc where sname like '_阳%'and student.sno=sc.sno and https://www.wendangku.net/doc/b410612082.html,o=https://www.wendangku.net/doc/b410612082.html,o 3、列出选修了‘数学’或‘大学英语’的学生学号、姓名、 select student.sno,sname,sdept,https://www.wendangku.net/doc/b410612082.html,o,cname,grade from student,sc,course where student.sno=sc.sno and https://www.wendangku.net/doc/b410612082.html,o=https://www.wendangku.net/doc/b410612082.html,o and sc.sno in(select sc.sno from sc,course where (cname='大学英语'or cname='数学')and https://www.wendangku.net/doc/b410612082.html,o=https://www.wendangku.net/doc/b410612082.html,o group by sc.sno) select student.sno,sname,sdept,cno,grade from student,sc where Cno in (select Cno from course where cname='数学'or cname='大学英语')and sc.sno=student.sno 4、查询缺少成绩的所有学生的详细情况; select * from student,sc where Grade is null and student.sno=sc.sno 5、查询与‘张力’(假设姓名唯一)年龄不同的所有学生的信息; select * from student where sage <>(select sage from student where sname='张力') 6、查询所选课程的平均成绩大于张力的平均成绩的学生学号、姓名及平均成绩 select student.sno,sname,平均成绩=A VG(grade) from student ,sc

相关文档