数据库原理实验指导书cslg.docx

上传人:b****2 文档编号:2439827 上传时间:2023-05-03 格式:DOCX 页数:39 大小:137.24KB
下载 相关 举报
数据库原理实验指导书cslg.docx_第1页
第1页 / 共39页
数据库原理实验指导书cslg.docx_第2页
第2页 / 共39页
数据库原理实验指导书cslg.docx_第3页
第3页 / 共39页
数据库原理实验指导书cslg.docx_第4页
第4页 / 共39页
数据库原理实验指导书cslg.docx_第5页
第5页 / 共39页
数据库原理实验指导书cslg.docx_第6页
第6页 / 共39页
数据库原理实验指导书cslg.docx_第7页
第7页 / 共39页
数据库原理实验指导书cslg.docx_第8页
第8页 / 共39页
数据库原理实验指导书cslg.docx_第9页
第9页 / 共39页
数据库原理实验指导书cslg.docx_第10页
第10页 / 共39页
数据库原理实验指导书cslg.docx_第11页
第11页 / 共39页
数据库原理实验指导书cslg.docx_第12页
第12页 / 共39页
数据库原理实验指导书cslg.docx_第13页
第13页 / 共39页
数据库原理实验指导书cslg.docx_第14页
第14页 / 共39页
数据库原理实验指导书cslg.docx_第15页
第15页 / 共39页
数据库原理实验指导书cslg.docx_第16页
第16页 / 共39页
数据库原理实验指导书cslg.docx_第17页
第17页 / 共39页
数据库原理实验指导书cslg.docx_第18页
第18页 / 共39页
数据库原理实验指导书cslg.docx_第19页
第19页 / 共39页
数据库原理实验指导书cslg.docx_第20页
第20页 / 共39页
亲,该文档总共39页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数据库原理实验指导书cslg.docx

《数据库原理实验指导书cslg.docx》由会员分享,可在线阅读,更多相关《数据库原理实验指导书cslg.docx(39页珍藏版)》请在冰点文库上搜索。

数据库原理实验指导书cslg.docx

数据库原理实验指导书cslg

《数据库原理与应用》实验指导与报告

/学年第学期

姓名:

______________

学号:

______________

班级:

______________

指导教师:

______________

计算机科学与工程学院

2016

实验一SQLServer使用初步

一、实验目的

1、熟悉SQLServer的组成及基本功能。

2、掌握SQLServer的安装、登录及注册。

3、掌握SQLServer企业管理器的使用方法。

4、熟悉查询分析器的基本使用。

二、实验预习

1、什么是数据库管理系统DBMS?

你所知道的DBMS有哪些?

 

2、SQLServer2000(2005)的安装步骤?

 

三、实验内容和要求

1、安装SQLServer2000

(1)安装SQLServer2000;

(2)启动SqlServer服务,练习用不同的方法启动SQLServer服务;

(3)练习创建数据库:

创建一个数据库,要求如下:

1)数据库名"testDB"。

2)数据库中包含一个数据文件,逻辑文件名为testDB_data,磁盘文件名为testDB_data.mdf,文件初始容量为5MB,最大容量为15MB,文件容量递增值为1MB。

3)事务日志文件,逻辑文件名为TestDB_log,磁盘文件名为TestDB_log.ldf,文件初始容量为5MB,最大容量为10MB,文件容量递增值为1MB。

4)添加一个数据文件,逻辑文件名为TestDB2_data,实际文件为TestDB2_data.ndf,文件初始容量为1MB,最大容量为6MB,文件容量递增值为1MB。

5)将日志文件的最大容量增加为15MB,递增值改为2MB。

2、注册服务器

基本步骤:

(1)打开企业管理器

(2)右击SQLServer组→新建SQLServer注册

(3)添加可用的服务器(实际数据库服务器的名称或IP地址)

(4)选择身份验证模式(选“系统管理员分配给我的登录信息”)

(5)输入正确的登录名和密码

(6)选择SQLServer组(选“在现有的SQLServer组中添加SQLServer”)

(7)完成注册

若注册成功,则显示注册成功的信息。

3、连接SQLServer服务器

(1)右键单击上面注册的数据库服务器,选择连接,建立与数据库服务器的连接。

观察连接后服务器图标的变化;

(2)右键单击选择编辑SQLServer注册属性,观察已注册数据库服务器的属性信息;

(3)右键单击选择删除SQLServer注册。

为保证数据库的安全性,使用完毕自己的数据库后,可采取删除的方式,断开与数据库的连接;

(4)重复注册服务器的步骤,再次建立与数据库的连接;

4、熟悉企业管理器

(1)单击建立的服务器连接,观察服务器的项目,写出它们的名称。

通过查看联机帮助,总结每个项目的基本功能。

1.数据库

在Microsoft®SQLServer™2000中,数据库由包含数据的表集合和其它对象(如视图、索引、存储过程和触发器)组成,目的是为执行与数据有关的活动提供支持。

存储在数据库中的数据通常与特定的主题或过程(如生产仓库的库存信息)相关。

2。

数据转换服务

Microsoft®SQLServer™2000数据转换服务(DTS)是一组图形工具和可编程对象,使您得以将取自完全不同源的数据析取、转换并合并到单个或多个目的。

3.管理

Microsoft®SQLServer™服务器管理由多种管理任务组成,其中包括:

∙注册服务器和指派密码。

∙重新配置网络连接。

∙配置链接服务器,从而使您得以对整个企业内的OLEDB数据源执行分布式查询和分布式事务。

∙配置远程服务器,使您得以使用某个SQLServer实例执行驻留在另一SQLServer实例上的存储过程。

∙配置备用服务器。

∙设置服务器配置选项。

∙管理SQLServer消息。

∙设置轮询间隔。

4.复制

Microsoft®SQLServer™2000的复制是在数据库之间对数据和数据库对象进行复制和分发并进行同步以确保其一致性的一组技术。

使用复制可以将数据分发到不同位置,通过局域网、使用拨号连接、通过Internet分发给远程或移动用户。

复制还能够使用户提高应用程序性能,根据数据的使用方式物理分隔数据(例如,将联机事务处理(OLTP)和决策支持系统分开),或者跨越多个服务器分布数据库处理。

5.安全性

数据库必须具有坚固的安全系统,才能控制可以执行的活动以及可以查看和修改的信息。

无论用户如何获得对数据库的访问权限,坚固的安全系统都可确保对数据进行保护。

6.支持服务

分布式和邮件服务支持

7.MetaDataService

Microsoft®SQLServer™2000MetaDataServices支持通过元数据浏览器浏览已注册的知识库数据库。

可以通过以下两种方式使用元数据浏览器:

使用SQLServer2000中的SQLServer企业管理器

将其作为一个独立的管理单元添加到Microsoft管理控制台(MMC),然后单独从SQLServer企业管理器运行

以什么方式使用浏览器将决定工作时的功能集。

 

(2)单击数据库,观察Northwind数据库下的项目,写出项目名称,通过联机帮助了解它们的基本功能。

1.关系图

数据库设计器是一种可视化工具,允许您对所连接的数据库进行设计和可视化处理。

在设计数据库时,可以使用数据库设计器创建、编辑或删除表、列、键、索引、关系和约束。

为使数据库可视化,可创建一个或更多的关系图,以显示数据库中的部分或全部表、列、键和关系。

2.表

表是包含数据库中所有数据的数据库对象。

表定义为列的集合。

与电子表格相似,数据在表中是按行和列的格式组织排列的。

每行代表唯一的一条记录,而每列代表记录中的一个域。

例如,在包含公司雇员数据的表中每一行代表一名雇员,各列分别表示雇员的详细资料,如雇员编号、姓名、地址、职位以及家庭电话号码等。

3.视图

视图是一个虚拟表,其内容由查询定义。

同真实的表一样,视图包含一系列带有名称的列和行数据。

但是,视图并不在数据库中以存储的数据值集形式存在。

行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。

对其中所引用的基础表来说,视图的作用类似于筛选。

定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。

分布式查询也可用于定义使用多个异类源数据的视图。

如果有几台不同的服务器分别存储组织中不同地区的数据,而您需要将这些服务器上相似结构的数据组合起来,这种方式就很有用。

通过视图进行查询没有任何限制,通过它们进行数据修改时的限制也很少。

下图显示了在两个表上建立的视图。

4.存储过程

在使用Microsoft®SQLServer™2000创建应用程序时,Transact-SQL编程语言是应用程序和SQLServer数据库之间的主要编程接口。

使用Transact-SQL程序时,可用两种方法存储和执行程序。

可以在本地存储程序,并创建向SQLServer发送命令并处理结果的应用程序;也可以将程序在SQLServer中存储为存储过程,并创建执行存储过程并处理结果的应用程序。

SQLServer中的存储过程与其它编程语言中的过程类似,原因是存储过程可以:

∙接受输入参数并以输出参数的形式将多个值返回至调用过程或批处理。

∙包含执行数据库操作(包括调用其它过程)的编程语句。

∙向调用过程或批处理返回状态值,以表明成功或失败(以及失败原因)。

可使用Transact-SQLEXECUTE语句运行存储过程。

存储过程与函数不同,因为存储过程不返回取代其名称的值,也不能直接用在表达式中。

使用SQLServer中的存储过程而不使用存储在客户计算机本地的Transact-SQL程序的优势有:

∙允许模块化程序设计。

只需创建过程一次并将其存储在数据库中,以后即可在程序中调用该过程任意次。

存储过程可由在数据库编程方面有专长的人员创建,并可独立于程序源代码而单独修改。

∙允许更快执行。

如果某操作需要大量Transact-SQL代码或需重复执行,存储过程将比Transact-SQL批代码的执行要快。

将在创建存储过程时对其进行分析和优化,并可在首次执行该过程后使用该过程的内存中版本。

每次运行Transact-SQL语句时,都要从客户端重复发送,并且在SQLServer每次执行这些语句时,都要对其进行编译和优化。

∙减少网络流量。

一个需要数百行Transact-SQL代码的操作由一条执行过程代码的单独语句就可实现,而不需要在网络中发送数百行代码。

∙可作为安全机制使用。

即使对于没有直接执行存储过程中语句的权限的用户,也可授予他们执行该存储过程的权限。

5.用户

用户标识符(ID)在数据库内标识用户。

在数据库内,对象的全部权限和所有权由用户帐户控制。

用户帐户与数据库相关。

sales数据库中的xyz用户帐户不同于inventory数据库中的xyz用户帐户,即使这两个帐户有相同的ID。

用户ID由db_owner固定数据库角色成员定义。

6.角色

角色是一个强大的工具,使您得以将用户集中到一个单元中,然后对该单元应用权限。

对一个角色授予、拒绝或废除的权限也适用于该角色的任何成员。

可以建立一个角色来代表单位中一类工作人员所执行的工作,然后给这个角色授予适当的权限。

当工作人员开始工作时,只须将他们添加为该角色成员,当他们离开工作时,将他们从该角色中删除。

而不必在每个人接受或离开工作时,反复授予、拒绝和废除其权限。

权限在用户成为角色成员时自动生效。

7.规则

规则是一个向后兼容的功能,用于执行一些与CHECK约束相同的功能。

CHECK约束是用来限制列值的首选标准方法。

CHECK约束比规则更简明,一个列只能应用一个规则,但是却可以应用多个CHECK约束。

CHECK约束作为CREATETABLE语句的一部分进行指定,而规则以单独的对象创建,然后绑定到列上。

8.默认值

如果在插入行时没有指定列的值,那么默认值指定列中所使用的值。

默认值可以是任何取值为常量的对象,例如:

∙持续

∙内置函数

∙数学表达式

有两种使用默认值的方法:

∙在CREATETABLE中使用DEFAULT关键字创建默认定义,将常量表达式指派为列的默认值。

这是首选的标准方法,也是定义默认值的更简明的方法。

∙使用CREATEDEFAULT语句创建默认对象,然后使用sp_bindefault系统存储过程将它绑定到列上。

这是一个向前兼容的功能。

9.用户定义的数据类型

用户定义数据类型基于Microsoft®SQLServer™2000中的系统数据类型。

当多个表的列中要存储同样类型的数据,且想确保这些列具有完全相同的数据类型、长度和为空性时,可使用用户定义数据类型。

例如,可以基于char数据类型创建名为postal_code的用户定义数据类型。

10.用户定义的函数

函数是由一个或多个Transact-SQL语句组成的子程序,可用于封装代码以便重新使用。

Microsoft®SQLServer™2000并不将用户限制在定义为Transact-SQL语言一部分的内置函数上,而是允许用户创建自己的用户定义函数。

可使用CREATEFUNCTION语句创建、使用ALTERFUNCTION语句修改、以及使用DROPFUNCTION语句除去用户定义函数。

每个完全合法的用户定义函数名(database_name.owner_name.function_name)必须唯一。

必须被授予CREATEFUNCTION权限才能创建、修改或除去用户定义函数。

不是所有者的用户在Transact-SQL语句中使用某个函数之前,必须先给此用户授予该函数的适当权限。

若要创建或更改在CHECK约束、DEFAULT子句或计算列定义中引用用户定义函数的表,还必须具有函数的REFERENCES权限。

在函数中,区别处理导致删除语句并且继续在诸如触发器或存储过程等模式中的下一语句的Transact-SQL错误。

在函数中,上述错误会导致停止执行函数。

接下来该操作导致停止唤醒调用该函数的语句。

(3)查看Northwind的表项目,单击表,观察表的名称、所有者、类型以及创建日期。

回答:

▪这些表的所有者有哪几种?

Dbo一种

 

▪这些表的类型有哪几种?

系统和用户

▪选择表Employees,在右键菜单中选择打开表->返回所有行,观察表中的数据,说出这些数据的实际含义。

观察其他用户类型的表,你还能说出它们数据的实际含义吗?

员工编号

姓名

职称

称呼

生日

录用日期

地址

城市

宗教信仰

(4)查看Northwind的视图项目,单击视图,观察视图的名称、所有者、类型以及创建日期。

选择视图ProductSalesfor1997,同上面观察表中数据的方法一样,观察视图中的数据,说出这些数据的意义。

商品类型

商品名称

销量

 

(5)查看Northwind的用户项目,单击用户。

回答:

▪有哪类用户?

查看它们的属性对话框,它们的角色和权限是否相同?

Dbo

Guest

不同

 

▪通过联机帮助,写出dbo、Guest用户的区别。

Guest:

guest用户帐户允许没有用户帐户的登录访问数据库。

当满足下列所有条件时,登录采用guest用户的标识:

∙登录有访问Microsoft®SQLServer™实例的权限,但没有通过自己的用户帐户访问数据库的权限。

∙数据库中含有guest用户帐户。

Dbo:

Databaseowner

在数据库中有全部权限。

 

(6)查看Northwind的角色项目,单击角色。

回答:

▪有哪些角色类型?

通过查看联机帮助,写出它们各自的含义和作用。

db_owner

在数据库中有全部权限。

db_accessadmin

可以添加或删除用户ID。

db_securityadmin

可以管理全部权限、对象所有权、角色和角色成员资格。

db_ddladmin

可以发出ALLDDL,但不能发出GRANT、REVOKE或DENY语句。

db_backupoperator

可以发出DBCC、CHECKPOINT和BACKUP语句。

db_datareader

可以选择数据库内任何用户表中的所有数据。

db_datawriter

可以更改数据库内任何用户表中的所有数据。

db_denydatareader

不能选择数据库内任何用户表中的任何数据。

db_denydatawriter

不能更改数据库内任何用户表中的任何数据。

 

(7)查看Northwind的安全性项目,单击项目中的登录,观察不同的登录名称、类型、服务器访问、默认数据库,找到你自己的登录名称,右键单击打开属性对话框,观察对话框中的设置,写出登录属性对话框中的设置作用。

Systemadministrators

为了控制访问权限

 

5、熟悉查询分析器

(1)打开查询分析器。

基本步骤:

▪单击注册的数据库服务器,确定服务器已经连接;

▪在主菜单“工具”中选择“SQL查询分析器”;

▪在打开的查询分析器窗口中,左侧的对象浏览器为注册的服务器,在工具栏的数据库选择中选择Northwind数据库为当前数据库;右侧窗口为查询窗口。

(2)分别在查询窗口中输入如下查询语句,观察查询结果,写出结果的数据记录个数:

查询语句1:

SELECT*

FROMShippers

ORDERBYCompanyName

结果记录数:

3

查询语句2:

SELECTFirstName,HomePhone

FROMNorthwind.dbo.Employees

ORDERBYFirstNameASC

结果记录数:

9

查询语句3:

SELECTROUND((UnitPrice*.9),2)ASDiscountPrice

FROMProducts

WHEREProductID=58

结果记录数:

1

查询语句4:

SELECTOrderID,

DATEDIFF(dd,ShippedDate,GETDATE())ASDaysSinceShipped

FROMNorthwind.dbo.Orders

WHEREShippedDateISNOTNULL

结果记录数:

809

查询语句5:

SELECTProductID,ProductName

FROMNorthwind.dbo.Products

WHERECategoryID=1ORCategoryID=4ORCategoryID=5

结果记录数:

29

 

四、实验小结

出题人脑子进水了

 

五、评阅成绩

实验预习20%

实验过程20%

实验结果30%

实验报告30%

总成绩

 

实验二数据定义

一、实验目的

1、掌握SQL数据定义功能:

数据库定义、表的定义、索引定义。

2、掌握利用企业管理器和SQL语句定义表、索引的方法。

二、实验预习

1、SQL中基本表定义语句格式:

 

2、SQL中修改基本表语句格式:

 

三、实验内容和要求

1、在企业管理器中,利用菜单操作的方式在各自的数据库中建立如下四个基本表:

(1)供应商表S:

列名

说明

数据类型

约束

SNO

供应商号

CHAR(6)

PRIMARYKEY

SNAME

供应商名

VARCHAR(20)

NOTNULL

STATUS

供应商状态

VARCHAR(50)

CITY

所在城市

VARCHAR(50)

(2)零件表P:

列名

说明

数据类型

约束

PNO

零件号

CHAR(6)

PRIMARYKEY

PNAME

零件名

VARCHAR(20)

NOTNULL

COLOR

颜色

CHAR

(2)

WEIGHT

重量

NUMERIC(9,2)

CHECK(WEIGHT>0ANDWEIGHT<=100)

(3)工程项目表J:

列名

说明

数据类型

约束

JNO

项目号

CHAR(6)

PRIMARYKEY

JNAME

项目名

VARCHAR(20)

NOTNULL

CITY

城市

VARCHAR(50)

(4)供应情况表SPJ:

列名

说明

数据类型

约束

SNO

供应商号

CHAR(6)

NOTNULL

PNO

零件号

CHAR(6)

NOTNULL

JNO

项目号

CHAR(6)

NOTNULL

QTY

供应数量

SMALLINT

DEFAULT100

2、用CREATE语句建立如下三个表,并写出相应的语句。

(1)学生表Student:

列名

说明

数据类型

约束

SNO

学号

CHAR(7)

主码

SNAME

姓名

CHAR(10)

NOTNULL

SSEX

性别

CHAR

(2)

取“男”或“女”

SAGE

年龄

SMALLINT

取值15-45

SDEPT

所在系

VARCHAR(20)

默认“计算机系”

语句:

 

(2)课程表Course:

列名

说明

数据类型

约束

CNO

课程号

CHAR(10)

主码

CNAME

课程名

VARCHAR(20)

NOTNULL

CCREDIT

学分

SMALLINT

大于0

SEMSTER

学期

SMALLINT

大于0

PERIOD

学时

SMALLINT

大于0

语句:

 

(3)选课表Sc:

列名

说明

数据类型

约束

SNO

学号

CHAR(7)

主码,引用Student的外码

CNO

课程号

CHAR(10)

主码,引用Course的外码

GRADE

成绩

SMALLINT

大于0

语句:

 

3、利用SQL语句对表结构进行修改。

(1)为零件表P增加一个规格(GUIGE)列,数据类型为字符,长度50;

 

(2)修改课程表Course的CNAME属性列的类型为VARCHAR(30);

 

(3)为供应情况表SPJ添加参照完整性约束;

SPJ的SNO列参照S表SNO列

 

SPJ的PNO列参照P表PNO列

 

SPJ的JNO列参照J表JNO列

(4)删除零件表P的规格(GUIGE)列

 

4、利用企业管理器向表中添加数据

(1)供应商表S:

SNO

SNAME

STATUS

CITY

S1

精益

20

天津

S2

盛锡

10

北京

继续往表中增加一条记录:

四个字段的数据分别是S1,东方红,30,北京,会出现什么情况?

为什么?

 

(2)零件表P:

PNO

PNAME

COLOR

WEIGHT

P1

螺母

12

P2

螺栓

绿

17

P3

螺丝刀

105.5

是否能够正常输入三条数据?

如果否,问题出在哪里,为什么?

 

(3)工程项目表J:

JNO

JNAME

CITY

J1

一汽

北京

J2

半导体厂

南京

J3

常州

第三条记录是否能够正常输入,若否,会出现什么问题,为什么?

(4)供应情况表SPJ:

SN0

PNO

JNO

QTY

S1

P1

J1

200

S1

P1

J3

S2

P2

J4

输入过程中是否会遇到问题,若有,出在哪,为什么?

 

四、实验小结

 

五、评阅成绩

实验预习20%

实验过程20%

实验结果30%

实验报告30%

总成绩

 

实验三数据查询

一、实验目的

1、掌握查询语句的基本组成和使用方法

2、掌握常用查询技巧

二、实验预习

1、SQL中查询语句格式:

 

2、连接查询有哪些不同的连接方式?

有什么特点。

 

三、实验内容和要求

1、按照下表中的内容,在企业管理器中为数据库表输入相应的数据。

学生表:

Student

Sno

Sname

Ssex

Sage

Sdept

9512101

李勇

19

计算机系

9512103

王敏

20

计算机系

9521101

张莉

22

信息系

9521102

吴宾

21

信息系

9521103

张海

20

信息系

9531101

钱小平

1

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 图表模板

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2