数据库实验指导 杨海霞 数据库实验指导新_第1页
数据库实验指导 杨海霞 数据库实验指导新_第2页
数据库实验指导 杨海霞 数据库实验指导新_第3页
数据库实验指导 杨海霞 数据库实验指导新_第4页
数据库实验指导 杨海霞 数据库实验指导新_第5页
已阅读5页,还剩167页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库实验指导数据库实验指导 第二篇第二篇 设计篇设计篇 第一篇第一篇 实验篇实验篇 第三篇第三篇 训练篇训练篇 第四篇第四篇 实例篇实例篇 第一篇第一篇 实验篇实验篇 2021-5-154 第一篇第一篇 实验篇实验篇 microsoft sql server是基于客户机/服务器模式的新一代大型关系型 数据库管理系统(rdbms)。在sql server的发展历程中,有两个 版本具有重要的意义,那就是在1996年推出的sql server 6.5版本和 2000年推出的sql server 2000版本。 本篇主要以sql server 2000为主,把关系数据库的一些基本理论和 基本技能应用

2、到20个实验中,使读者熟练掌握数据库的创建和管理、 数据库的维护和实施以及如何管理数据库对象等,为数据库的开发打 下扎实的基本功。 本篇的每个实验都由下列4部分组成: 实验目的 实验内容 问题解答 思考题 2021-5-155 实验实验1 sql server 20001 sql server 2000的安装的安装 1实验目的 (1)了解sql server 2000不同版本安装的硬件要求和系统要求。 (2)熟悉sql server 2000的安装步骤。 (3)了解sql server 2000的卸载方法。 (4)了解sql server 2000的主要组件。 2实验内容 (1)检查软硬件配置

3、是否达到sql server 2000的安装要求。 (2)选择安装sql server 2000的方式。 (3)安装前要做的准备工作。 (4)安装sql server 2000。 2021-5-156 实验实验1 sql server 20001 sql server 2000的安装的安装 3问题解答 (1)如何删除sql server 2000中的实例? 可以通过以下两种方法删除sql server 2000的实例。 运行sql server 2000安装程序,并选择“卸载”选项。 运行windows控制面板中的“添加/删除程序应用程序”。 每个命名的sql server 2000实例必须单

4、独删除,不能删除sql server 2000的个别组件,若要删除组件,必须删除整个实例。 提示:删除sql server 2000之前,应退出所有应用程序,包括 windows nt 事件查看器,注册表编辑器和所有的 sql server应用程序以及所有依赖于 sql server的应用程序。 2021-5-157 实验实验1 sql server 20001 sql server 2000的安装的安装 3问题解答 (2)sql server 2000中的主要组件有哪些? sql server 2000提供了一系列管理工具和实用程序,用于设置和 管理sql server 2000。 当sql

5、 server 2000 安装完成后,选择“开始”“程 序”“microsoft sql server”命令,可以看到 sql server 2000 主要组件的快捷方式。 其中,常用的有“服务管理器”、“企业管理器”、“查询管理器” 和“导入和导出数据”等。 2021-5-158 实验实验1 sql server 20001 sql server 2000的安装的安装 4思考题 (1)sql server 2000的安装出错时,如何进行错误检查? (2)如何使用sql server 2000的帮助文档? 2021-5-159 实验实验2 2 配置配置sql server 2000sql se

6、rver 2000 1实验目的 (1)掌握启动和停止sql server 服务的方法。 (2)掌握注册sql server 服务器的方法。 (3)掌握创建服务器组的方法。 (4)了解企业管理器和查询分析器的功能。 2实验内容 (1)练习用不同的方法启动sql server服务。 (2)新建服务器组。 (3)删除服务器组。 (4)注册服务器。 (5)断开与恢复同服务器的连接。 (6)删除sql server注册。 (7)打开查询分析器。 2021-5-1510 实验实验2 2 配置配置sql server 2000sql server 2000 3问题解答 (1)企业管理器的作用是什么? 企业管

7、理器是sql server 2000中最重要的一个管理工具,用于配 置sql server 2000系统环境,创建和管理所有sql server对象,主 要包括注册和管理sql server 服务器,连接、启动、暂停或停止 sql server 服务,创建和管理数据库,创建和管理各种数据库对象 (包括表、视图、存储过程、触发器、角色、规则、默认值、用户自 定义数据类型、用户自定义函数以及全文目录),备份数据库和事务 日志,复制数据库,设置任务调度,让管理者进行警报设置,提供跨 服务器的拖放操作,管理用户账户,编写和执行 transact-sql 语句, 管理和控制sql mail等。 2021

8、-5-1511 实验实验2 2 配置配置sql server 2000sql server 2000 3问题解答 (2)打开查询分析器时,怎样进行数据库登录认证? 在打开查询分析器窗口时,用户必须首先登录到服务器。sql server提供了两种登录认证方式:一种是使用集成windows身份验证 方式,只要用户使用的是windows操作系统并已经以合法的身份登录 到操作系统环境中,那么打开查询分析器时,不用再输入登录信息; 另一种是sql server身份验证方式,需要用户输入正确的登录名和密 码才能连接服务器的连接,并进入查询分析器窗口。 2021-5-1512 实验实验2 2 配置配置sql

9、 server 2000sql server 2000 4思考题 (1)sql server的服务账号可以更改吗?如果可以,如何操作? (2)启动sql server服务有哪些方法? (3)如何配置查询分析器? 2021-5-1513 实验实验3 3 管理数据库管理数据库 1实验目的 (1)熟练掌握在企业管理器中创建数据库的方法。 (2)熟练掌握用sql语句创建数据库的方法。 (3)熟练掌握使用创建数据库向导来创建数据库的方法。 (4)熟练掌握数据库属性的设置。 (5)掌握数据库的修改和删除方法。 2实验内容 (1)使用企业管理器创建一个名为“sm”的数据库。 (2)通过查询分析器创建一个名为

10、“进销存”的数据库 。 (3)使用向导创建一个名为“工资管理”的数据库。 (4)使用企业管理器,修改sm数据库 。 (5)使用sql语句,修改sm数据库 。 (6)使用sql语句,删除“进销存”数据库。 2021-5-1514 实验实验3 3 管理数据库管理数据库 3问题解答 sql server 2000中的数据库能否只包含数据文件? 在microsoft sql server 2000中数据库必须至少包含一个数据文 件和一个事务日志文件,数据和事务日志信息从不混合在同一文件中, 并且每个文件只能由一个数据库使用。 2021-5-1515 实验实验3 3 管理数据库管理数据库 4思考题 (1

11、)使用企业管理器删除“进销存”数据库。 (2)在查询分析器中,通过模板创建一个名为“学生管理”的数据 库。 (3)从sm数据库中删除数据文件“sm_data1”。 2021-5-1516 实验实验4 4 用用t-sqlt-sql创建表创建表 1实验目的 (1)熟悉各种数据类型。 (2)能够运用t-sql(transact-sql)语句正确创建表。 (3)了解6种常用的数据完整性约束。 2实验内容 (1)使用t-sql语句,创建sm数据库中的学生表student。 (2)创建sm数据库中的课程表course。 (3)创建sm数据库中的选课表sc。 (4)输入sql语句,查看表student的定义

12、。 (5)输入sql语句,查看表student与其他表之间的依赖关系。 (6)输入sql语句,查看表student上的约束。 2021-5-1517 实验实验4 4 用用t-sqlt-sql创建表创建表 3问题解答 (1)在为数据库设计表之前应考虑哪些问题? 应该考虑两个问题:一是数据库中要存放哪些数据;二是这些数 据如何划分到表中。 2021-5-1518 实验实验4 4 用用t-sqlt-sql创建表创建表 3问题解答 (2)什么是临时表? 临时表是存储在tempdb数据库中的,当不再使用时会被自动删 除。 在sql sever中可以创建两种临时表:局部临时表和全局临时表。 局部临时表只能

13、被当前的用户使用,即只能在创建它的会话内访问, 当这一会话结束时,局部临时表自动被删除;而全局临时表在创建后 能被所有的用户看到,当最后一个使用它的用户断开连接时才被自动 删除掉。 可以用临时表来存储那些在永久存储前仍需加以处理的数据,例 如,可以把多个数据合并起来创建临时表,在当前会话中访问这一临 时表,这样就可以随时访问合并起来的数据,而不用引用各个数据库 表。 2021-5-1519 实验实验4 4 用用t-sqlt-sql创建表创建表 4思考题 建立班级表class(clno char(6) ,clname varchar(30) ,dno char(4),tno char(5),并修

14、改表student,设置clno为外码约束。 2021-5-1520 实验实验5 5 用企业管理器创建表用企业管理器创建表 1实验目的 (1)能够运用企业管理器正确创建表。 (2)学会用企业管理器设置常用的数据完整性约束。 2实验内容 (1)利用企业管理器提供的图形界面来创建“进销存”数据库中的 客户信息表c、货物表g和订单表o 。 (2)在表o的goodsname列上创建外键约束。 (3)在表o的quantity列上创建检查约束。 (4)使用企业管理器,把sm数据库中的选课表sc的主码设置为sno 和cno。 (5)查看表间的依赖关系。 (6)向表中输入数据。 2021-5-1521 实验实

15、验5 5 用企业管理器创建表用企业管理器创建表 3问题解答 什么是数据完整性?关系数据库有几类完整性?怎样通过sql server 来实现? 数据完整性是指数据库中数据的正确性和一致性,保证数据库中 数据的质量。一般有以下3类完整性。 实体完整性:通过主键约束来维护。 参照完整性:通过外键约束来维护。 域完整性:通过唯一约束、检查约束、默认值和是否可以为空 等约束来维护。 2021-5-1522 实验实验5 5 用企业管理器创建表用企业管理器创建表 4思考题 (1)把表c中type列的默认值设置为1。 (2)查看表o的依赖关系。 2021-5-1523 实验实验6 6 数据的复制与恢复数据的复

16、制与恢复 1实验目的 (1)熟练掌握附加数据库的方法。 (2)熟练掌握数据导入和导出的方法。 (3)熟练进行数据库的备份和还原。 (4)了解差异备份和完全备份。 2实验内容 (1)对“进销存”数据库进行附加操作。 (2)使用sql语句对sm数据库进行附加操作。 (3)对sm数据库进行备份。 (4)删除sm数据库。 (5)还原sm数据库。 (6)将sm数据库中的数据导入到excel表格中。 (7)将excel表中的数据导入到ss数据库中。 2021-5-1524 实验实验6 6 数据的复制与恢复数据的复制与恢复 3问题解答 (1)系统数据库可以还原吗? 在sql server 中,系统数据库存储

17、的是系统信息,如果系统数据 库被破坏,就必须还原系统数据库。 系统数据库的还原分为两种情况,当sql server服务可以启动时, 可以用还原用户数据库的方法还原系统数据库;当sql server服务不 能启动时,还原系统数据库的方法如下。 运行/binn下的文件“rebuilem.exe”,重建系统数据库。 启动sql server服务。 按master,msdb,model的顺序还原系统数据库。 2021-5-1525 实验实验6 6 数据的复制与恢复数据的复制与恢复 3问题解答 (2)在sql server 2000中,备份类型主要有哪些? 完全备份:对数据库整体的备份。 差异备份:对数

18、据库自前一个完全备份后改动的部分的备份。 事务日志备份:对数据库事务日志的备份。 2021-5-1526 实验实验6 6 数据的复制与恢复数据的复制与恢复 3问题解答 (3)利用数据导入导出,可以完成数据库的复制和恢复吗? 可以,具体操作如下。 复制数据库结构。启动企业管理器,将鼠标指针指向左侧窗口 要复制的数据库节点,单击鼠标右键,在弹出的快捷菜单中选择 “所有任务”“生成sql脚本”命令,生成数据库结构的sql脚 本文件。 导出数据库数据。使用dts将数据库中的数据导出到目标文件 中。 创建数据库。 生成数据库结构。在查询分析器中,执行数据库结构的sql脚 本文件,生成指定数据库。 导入数

19、据库数据。使用dts将目标文件中的数据导入数据库中。 2021-5-1527 实验实验6 6 数据的复制与恢复数据的复制与恢复 4思考题 (1)分析下列sql语句的功能。 sp_addumpdevice disk, s_bak_mdf, d:examples_bak_mdf.bak go sp_ addumpdevice disk, s_bak_log, d:examples_bak_log.bak go backup database sm to s_bak_mdf backup database sm to s_bak_mdf with differential backup log sm

20、 to s_bak_log restore database sm from bak restore log sm from bak_log 2021-5-1528 实验实验6 6 数据的复制与恢复数据的复制与恢复 4思考题 (2)对sm数据库进行差异备份、日志备份。 (3)使用向导备份“进销存”数据库。 (4)某企业的数据每周日晚12点进行一次全库备份,每天晚12点进 行一次差异备份,每小时进行一次日志备份,数据库在2006/12/23 3:30崩溃,应如何恢复使数据损失最小? (5)数据导入、导出的主要作用是什么? 2021-5-1529 实验实验7 7 表的维护表的维护 1实验目的 (1

21、)熟练掌握用企业管理器修改表。 (2)能够运用t-sql语句对表结构进行修改。 (3)熟练掌握用企业管理器编辑表中的数据。 (4)能够运用t-sql语句对表中的数据进行插入、修改和删除操作。 2实验内容 (1)使用企业管理器为表student增加一列。 (2)用sql语句修改表course的列属性,将cname的长度改为40, 且不允许空。 (3)用sql语句向表student中增加列email,且要求输入的电子邮 件地址必须包括“”字符。 (4)用sql语句删除表student中的列address。 (5)用sql语句给表student添加主键约束。 2021-5-1530 实验实验7 7

22、表的维护表的维护 2实验内容 (6)删除sname列上的主键约束。 (7)使用with nocheck子句。 (8)使约束无效或重新有效。 (9)使用企业管理器编辑表student中的数据。 (10)用sql语句向表中插入数据。 (11)用sql语句修改表中的记录。 (12)用sql语句删除表中的记录。 2021-5-1531 实验实验7 7 表的维护表的维护 3问题解答 如果一个表被其他表通过外码约束引用,应该怎样删除? 如果一个表被其他表通过外码约束引用,那么必须先删除定义外码 约束的表,或删除其外码约束,当没有其他表引用它时,这个表才能 被删除。 2021-5-1532 实验实验7 7

23、表的维护表的维护 4思考题 (1)truncate table语句的作用是什么? (2)对于表student,分别执行drop table student和delete student两条命令,结果有什么不同? 2021-5-1533 实验实验8 8 常规数据查询常规数据查询 1实验目的 (1)掌握select子句以及where子句的使用方法。 (2)学会应用order by子句。 (3)掌握5种基本的聚合函数。 (4)学会分组统计和二次查询。 2实验内容 (1)select子句的应用。 (2)where子句的应用。 (3)order by子句的应用。 (4)聚合函数的应用。 (5)聚合操作与

24、分组统计的应用。 2021-5-1534 实验实验8 8 常规数据查询常规数据查询 3问题解答 (1)compute,compute by和group by有何不同? group by子句对查询结果进行分组,其返回的结果中只有合计数据, 而没有原始的详细记录;compute子句生成合计作为附加的汇总列 出现在结果集的最后;当与by一起使用时,compute子句在结果集 内生成控制中断和分类汇总,可在同一查询内指定compute by子句 和compute子句。 (2)where子句与having子句有何不同? having子句和where子句的相似之处就是都定义搜索条件;但是和 where子句

25、不同,having子句与组有关,而不是与单个的行有关。 2021-5-1535 实验实验8 8 常规数据查询常规数据查询 4思考题 用sql语句完成下列查询。 查询所有年龄为20岁的男生的信息。 查询选修00001号课程的学生的最高分。 查询所有名字中含有“王”字的学生的信息。 查询本学期正在选修00003号课程的学生的学号。 2021-5-1536 实验实验9 9 多表查询与子查询多表查询与子查询 1实验目的 (1)熟悉基本的连接操作,掌握内连接与外连接的方法,学会应用自身连接。 (2)掌握相关子查询的使用方法。 (3)掌握嵌套子查询的使用方法。 (4)学会应用子查询修改数据。 2实验内容

26、(1)基本连接操作。 (2)内连接操作。 (3)外连接操作。 (4)联合查询。 (5)交叉连接。 (6)自连接。 (7)使用in关键字。 (8)使用exists关键字。 (9)使用比较运算符。 (10)使用子查询修改数据。 2021-5-1537 实验实验9 9 多表查询与子查询多表查询与子查询 3问题解答 (1)创建查询时,应遵循的基本原则有哪些? 创建查询时,应遵循的基本原则如下: from子句应当包括所有的表名。 where子句应定义一个条件表达式,限定查询只能返回满足条 件的记录。 当列名为多个表共有时,列名必须被限制。 2021-5-1538 实验实验9 9 多表查询与子查询多表查询

27、与子查询 3问题解答 (2)在含有join关键字的连接查询中,其连接条件主要是通过哪些方 法定义两个表在查询中的连接方式? 指定每个表中要用于连接的列,典型的连接条件是在一个表中指 定外键,在另一个表中指定与其关联的键。 指定比较各列的值时,要用比较运算符。 (3)使用exists关键字引入的子查询与使用in关键字引入的子查询在语 法上有哪些不同? 主要有以下两方面不同。 exists关键字前没有列名或表达式。 由exists关键字引入的子查询的select列表通常都是由星号(*) 组成。 2021-5-1539 实验实验9 9 多表查询与子查询多表查询与子查询 3问题解答 (4)能够在whe

28、re中使用的运算符有哪些?各运算符的功能是什么? 能够在where中使用的运算符及其功能如表1-9-1所示。 2021-5-1540 实验实验9 9 多表查询与子查询多表查询与子查询 4思考题 连接表时,根据select语句的不同,有时查询结果中会返回重复 的行,应怎样使查询结果中不出现重复的行? 2021-5-1541 实验实验10 10 视图视图 1实验目的 (1)掌握创建视图的方法。 (2)能够对视图进行修改。 (3)能够通过视图修改数据。 2实验内容 (1)创建视图。 (2)更新视图定义。 (3)删除视图。 (4)更新视图。 2021-5-1542 实验实验10 10 视图视图 3问题

29、解答 (1)什么是可更新视图? 如果创建一个视图,该视图没有汇总或聚集数据,每一列与一个基 表中的一个源列对应,并且每一行都与一个源行对应,则这个视图便 是一个可更新视图。 2021-5-1543 实验实验10 10 视图视图 3问题解答 (2)什么是关系图?如何建立和修改关系图? 关系图是用来标记数据库中表之间的相互关联情况的,以图形显 示通过数据连接选择的表或表结构化对象,同时也显示它们之间的连 接关系。 在sql server中,一个数据库可以有多个关系图。在企业管理器 中,依次展开树型目录,在指定数据库目录中选择“关系图”选项, 单击鼠标右键,从弹出的快捷菜单中选择“新建数据库关系图”

30、命令, 可以创建新的关系图。对控制台目录中已有关系图的图标,选中一个 单鼠标右键,从弹出的快捷菜单中选择“设计关系图”命令,可以对 现有关系图进行修改。 2021-5-1544 实验实验10 10 视图视图 4思考题 (1)用sql语句完成下列操作。 建立所有年龄为20岁的男生的视图。 将学生的学号和所选课程的门数建立一个视图。 将所有职工的职工号和年薪建立一个视图。 删除上面所建立的视图。 (2)使用企业管理器完成上题所有操作。 (3)使用视图向导创建所有年龄为20岁的男生的视图。 (4)哪些视图不允许更新? 2021-5-1545 实验实验11 11 索引的创建与使用索引的创建与使用 1实

31、验目的 (1)理解索引的概念和索引的作用。 (2)掌握创建索引的方法。 (3)学会使用索引。 (4)了解聚簇索引和非聚簇索引。 2实验内容 (1)在tname列上创建索引。 (2)使用索引向导,在sm数据库中,为表student创建索引。 (3)使用sql语句在表course上创建一个唯一性的聚簇索引,索引 排列顺序为降序。 (4)使用sql语句在表course上创建一个非唯一性的非聚簇索引。 (5)查看表course上的所有索引。 (6)删除表course上的索引。 2021-5-1546 实验实验11 11 索引的创建与使用索引的创建与使用 3问题解答 (1)创建索引之前应考虑什么问题?

32、创建索引之前应考虑如下问题: 只有表的拥有者才能在表上创建索引。 每个表上只能创建一个聚簇索引。 每个表上最多能创建249个非聚簇索引。 一个索引最大为900字节,在char等类型的大型列上创建索引 应考虑这一限制。 一个索引最多包含16列。 2021-5-1547 实验实验11 11 索引的创建与使用索引的创建与使用 3问题解答 (2)如何通过企业管理器在已存在的表上建立索引、查看索引、修 改索引和删除索引? 在企业管理器中,用鼠标右键单击已存在的表,在弹出的快捷菜 单中选择“所有任务”“管理索引”命令,在“管理索引”窗口中 进行相关操作。 2021-5-1548 实验实验11 11 索引的

33、创建与使用索引的创建与使用 4思考题 (1)索引是否越多越好?为什么? (2)聚簇索引和非聚簇索引有何区别?为什么每个表只能有一个聚 簇索引? 2021-5-1549 实验实验12 12 管理数据库其他对象管理数据库其他对象 1实验目的 (1)掌握如何创建、修改和删除规则。 (2)理解规则与check约束、default约束的区别。 (3)掌握如何创建、修改和删除默认值。 (4)掌握如何创建、修改、删除和查看用户自定义的数据类型。 2实验内容 (1)创建规则。 (2)捆绑规则。 (3)解除捆绑的规则。 (4)查看规则。 (5)删除规则。 (6)关于默认值的操作。 (7)关于用户自定义数据类型的

34、操作。 2021-5-1550 实验实验12 12 管理数据库其他对象管理数据库其他对象 3问题解答 规则与check约束的不同之处在哪里? 规则与check约束的不同之处如下。 check约束是用create table语句在建表时指定的,而规则 则需要作为单独的数据库对象来实现。 在一列上只能使用一个规则,但可以使用多个check约束。 规则可以应用于多个列,还可以应用于用户自定义的数据类型; 而check约束只能应用于它所定义的列。 2021-5-1551 实验实验12 12 管理数据库其他对象管理数据库其他对象 4思考题 (1)为表中数据提供默认值有几种方法? (2)创建一个用户自定义

35、数据类型faxno,基本数据类型为 varchar,长度为24,不允许为空。 2021-5-1552 实验实验13 13 常量、变量及函数常量、变量及函数 1实验目的 (1)了解t-sql、常量和变量。 (2)掌握sql server中运算符与表达式的使用。 (3)掌握sql server中函数的使用。 2实验内容 (1)全局变量。 (2)局部变量。 (3)函数。 (4)组织sql语句。 2021-5-1553 实验实验13 13 常量、变量及函数常量、变量及函数 3问题解答 (1)什么是t-sql? t-sql(transact sql)是microsoft微软公司在sysbase的基础 上

36、发展起来的一种结构化查询语言,是应用程序和存储过程与sql server通信的工具。t-sql不是一种标准的编程语言,它必须通过 sql server的数据引擎来分析和运行。 (2)在t-sql程序设计过程中,定义的常量类型有哪些? 常量可以分为字符串常量、整型常量、日期时间常量、实型常量、 货币常量和全局唯一标识符。 2021-5-1554 实验实验13 13 常量、变量及函数常量、变量及函数 4思考题 (1)执行多条sql语句有几种方法? (2)在sql server中,标识符、#、#的意义是什么? (3)找出下列语句的语法错误。 use northwind go declare ss i

37、nt /*start of the split comment, go end of the split comment,*/ select ss=89 go 2021-5-1555 实验实验14 14 流程控制语句流程控制语句 1实验目的 (1)熟悉流程控制关键字。 (2)掌握流程控制关键字的使用方法。 2实验内容 (1)使用ifelse语句。 (2)使用while语句。 (3)使用waitfor语句。 (4)使用goto语句。 (5)使用case语句。 (6)使用raiserror语句。 2021-5-1556 实验实验14 14 流程控制语句流程控制语句 3问题解答 t-sql的流控制关

38、键字包括哪些? t-sql的流控制关键字包括:beginend,waitfor,goto, while,ifelse,break,return和continue。 2021-5-1557 实验实验14 14 流程控制语句流程控制语句 4思考题 编程实现以下查询:在sm数据库中,查询是否有选修00004号课程的 学生,如果有,统计成绩大于90分的学生的个数;如果没有,查询是 否有选修00005号课程的学生,如果存在,显示所有选修00005号课 程的学生总数,否则显示“尚无选修00004号课程和00005号课程的 学生”。 2021-5-1558 实验实验15 15 存储过程存储过程 1实验目的

39、(1)了解几个常用的系统存储过程。 (2)掌握如何使用t-sql语句创建、执行和重编译存储过程。 (3)了解如何使用企业管理器管理存储过程。 2实验内容 (1)创建存储过程。 (2)使用输入参数。 (3)使用默认参数值。 (4)使用输出参数。 (5)使用返回值。 (6)修改存储过程。 (7)查看存储过程。 (8)删除存储过程。 2021-5-1559 实验实验15 15 存储过程存储过程 3问题解答 创建存储过程之前应考虑什么? 创建存储过程之前应考虑以下4点: create procedure语句不能与别的t-sql语句位于同一个批 中; 创建存储过程的权限默认属于数据库拥有者,该权限可以授

40、予 他人; 存储过程是数据库对象,它的命名应符合标识符的命名规范; 只能在当前数据库中创建存储过程。 2021-5-1560 实验实验15 15 存储过程存储过程 4思考题 (1)使用企业管理器创建存储过程ssc_3。 (2)使用向导创建存储过程ssc_3。 (3)使用企业管理器查看存储过程ssc_3的定义。 (4)使用企业管理器删除存储过程ssc_3。 2021-5-1561 实验实验16 16 触发器触发器 1实验目的 (1)掌握如何使用t-sql语句创建触发器。 (2)了解如何使用企业管理器创建触发器。 (3)掌握after触发器的用法,并了解instead of触发器的用法。 2实验内

41、容 (1)创建触发器。 (2)修改scinsert触发器。 (3)查看依赖关系。 (4)使触发器无效或重新有效。 (5)删除scinsert触发器。 2021-5-1562 实验实验16 16 触发器触发器 3问题解答 什么是inserted表和deleted表? sql server为每个触发器都创建了两个专用表:inserted表和 deleted表。这是两个逻辑表,由系统来维护,用户不能对它们进行 修改。它们存放在内存而不是数据库中。这两个表的结构总是与被该 触发器作用的表的结构相同。触发器执行完成后,与该触发器相关的 这两个表也被删除。 deleted表存放由于执行delete或upd

42、ate语句而要从表中删除 的所有行。在执行delete或update操作时,被删除的行从激活触发 器的表中被移动到deleted表,这两个表不会有共同的行。 inserted表存放由于执行insert或update语句而要向表中插入 的所有行。在执行insert或update操作时,新的行同时添加到激活 触发器的表和inserted表中,inserted表的内容是激活触发器的表 中新行的备份。 2021-5-1563 实验实验16 16 触发器触发器 4思考题 (1)在创建触发器之前要考虑哪些问题? (2)通过alter trigger语句可以修改触发器吗? 2021-5-1564 实验实验1

43、7 sql17 sql游标游标 1实验目的 (1)掌握如何声明游标。 (2)掌握如何打开和关闭游标的方法。 (3)学会用游标进行数据检索。 2实验内容 (1)声明游标 (2)打开和关闭游标。 (3)使用游标检索数据。 (4)定位update语句和delete语句。 2021-5-1565 实验实验17 sql17 sql游标游标 3问题解答 要完全实现游标的功能必须使用哪些sql语句? declare cursor语句:该语句通过定义游标名称、游标特 征来声明游标。 open语句:使用该语句打开游标并调用查询表达式,生成可 被fetch语句使用的查询结果。 fetch语句:该语句把数据赋予变量

44、,并通过变量把数据传递 为程序设计语言或其他嵌入式sql语句。 close语句:该语句用来关闭游标,游标一旦关闭,就不能再 从查询结果中执行数据检索。 2021-5-1566 实验实验17 sql17 sql游标游标 4思考题 (1)什么是游标?其作用是什么? (2)在fetch语句中可以添加next,first,last,prior, absolute和relative关键字,说明这些关键字的含义以及在什么样 的游标中可以使用。 2021-5-1567 实验实验18 18 事务与并发控制事务与并发控制 1实验目的 (1)学会创建事务。 (2)学会定义事务的隔离级别。 (3)了解事务模式及锁模

45、式。 2实验内容 (1)创建事务。 (2)事务模式。 (3)用户可以自定义事务隔离级别。 (4)锁模式。 2021-5-1568 实验实验18 18 事务与并发控制事务与并发控制 3问题解答 (1)怎样设置自动提交事务模式? 自动提交事务是sql server的默认事务管理模式,只要自动提交事 务模式没有被显式或隐性事务代替,则sql server连接时仍以该默认 管理模式进行操作。 2021-5-1569 实验实验18 18 事务与并发控制事务与并发控制 3问题解答 (2)ansi sql 92中定义了4个事务隔离级别,每个级别解决并发问 题的能力如何? ansi sql 92中定义了4个事

46、务隔离级别,每个级别解决并发问题 的能力如表1-18-1所示。 2021-5-1570 实验实验18 18 事务与并发控制事务与并发控制 4思考题 (1)sql server中有几种锁模式? (2)乐观锁和悲观锁的优缺点各是什么? 2021-5-1571 实验实验19 19 数据库安全数据库安全 1实验目的 (1)掌握如何添加、删除和修改数据库用户。 (2)掌握如何添加、删除数据库角色以及如何为数据库角色添加和删 除用户。 (3)掌握如何授予、拒绝和剥夺权限。 (4)了解如何管理应用程序角色。 (5)掌握通过视图保证数据的安全。 2实验内容 (1)使用企业管理器为sm数据库添加一个数据库用户。

47、 (2)使用系统存储过程完成上述操作。 (3)使用企业管理器删除数据库用户yy。 (4)使用企业管理器为sm数据库创建一个暂无成员的角色 specialman 2021-5-1572 实验实验19 19 数据库安全数据库安全 2实验内容 (5)将数据库成员yy添加到specialman角色中。 (6)删除角色specialman。 (7)在sm数据库中创建应用程序角色gradeapp,口令为 “password”。 (8)将表sc上的所有权限授给角色gradeapp。 (9)在所用的应用程序中激活角色gradeapp。 (10)修改应用程序角色gradeapp的口令。 (11)删除应用程序角色

48、。 (12)练习权限的授予。 (13)练习权限的收回。 (14)在表student上创建一个简单的视图,对视图进行加密,并使 用企业管理器来查看其属性。 (15)采用视图机制,使数据库用户yy只能看到表student中040003 班的学生。 2021-5-1573 实验实验19 19 数据库安全数据库安全 3问题解答 (1)sql server的权限分为几种? sql server的权限分为3种:对象权限、语句权限和隐含权限。 (2)应用程序角色有什么作用?与标准数据库角色有什么区别? sql server 2000中设计了应用程序角色的概念,这种安全机制可 以指定一个数据库或其中的某些对象

49、只能用某些特殊的应用程序访问, 而不能允许用户用任何工具来进行操作,更有利于保证数据的完整性 和一致性。它和标准数据库角色的区别如下。 应用程序角色不包含成员,任何用户都不能加入应用程序角色。应 用程序角色的权限在角色被激活时生效,一个用户是通过有权启动该 应用程序而不是通过加入该应用程序角色来获得权限。 应用程序角色在激活时需要口令。 在激活应用程序角色以后,当前用户的一切权限都会消失,代之以 应用程序角色的权限。 2021-5-1574 实验实验19 19 数据库安全数据库安全 4思考题 (1)用企业管理器完成上述的权限授予操作。 (2)用企业管理器删除角色specialman。 (3)使

50、用存储过程删除数据库用户yy。 (4)用企业管理器将数据库成员yy添加到specialman角色中。 (5)如何通过视图实现列级数据安全? 2021-5-1575 实验实验20 20 访问访问sql serversql server 1实验目的 (1)学会使用ado访问sql server。 (2)掌握配置sql server的odbc数据源的方法。 (3)学会使用web助手访问sql server。 (4)了解使用jdbc访问sql server。 2实验内容 (1)使用ado访问sql server中的数据。 (2)使用odbc访问sql server中的数据。 (3)使用jdbc访问sq

51、l server中的数据。 (4)使用web助手访问sql server中的数据。 2021-5-1576 实验实验20 20 访问访问sql serversql server 3问题解答 什么是sql server api?它提供了哪些应用程序接口? api(application program interface)就是应用程序编程接口, 它是能用来操作组件、应用程序或者操作系统的一组函数。典型的情 况下,api由一个或多个提供某种特殊功能的 ddl 组成。 sql server支持多种数据应用程序接口(api):活动数据对象 (ado)、ole db开放式数据库连接(odbc)、远程数据

52、对象 (rdo)、数据访问对象(dao)、microsoft基础类(mfc)的数 据库类、嵌入式sql和db-library。sql server通常以动态链接库 (ddl)的形式(称为提供程序或驱动程序)支持这些api。提供程 序或驱动程序将应用程序对数据库api的调用转换成可发送到sql server实例的命令。 2021-5-1577 实验实验20 20 访问访问sql serversql server 4思考题 (1)在使用sql server的应用程序中,通用的api有哪些? (2)odbc数据源可以分为3种类型,分别是什么? (3)jdbc的功能是什么? 2021-5-1578 第

53、二篇第二篇 设计篇设计篇 2021-5-1579 第二篇第二篇 设计篇设计篇 powerdesigner是sybase公司推出的企业级建模及设计工具,是一种图 形化的易于使用的case工具集,使用它可以方便地进行数据库的分 析与设计。 本篇从学籍管理的需求分析开始,以powerdesigner 12.0版本为主,实 现数据库设计的全过程,并通过触发器、存储过程、函数等特殊数据 对象的设计,完成学籍管理的一些复杂的业务逻辑,使读者对数据库 设计的认识更加直接,对数据库设计理论的理解也更加深刻。 本篇设计1设计5由下列5部分组成: 设计目的 背景知识 设计内容 问题解答 思考题 设计6设计9中不包

54、含背景知识部分,如果需要可以参考第一篇中的相 关内容。 2021-5-1580 设计设计1 1 安装数据库设计工具安装数据库设计工具powerdesignerpowerdesigner 1 1设计目的设计目的 (1 1)掌握)掌握powerdesignerpowerdesigner的安装步骤。的安装步骤。 (2 2)了解)了解powerdesignerpowerdesigner的操作环境。的操作环境。 (3 3)了解)了解powerdesignerpowerdesigner的基本功能。的基本功能。 2 2背景知识背景知识 powerdesignerpowerdesigner是是sybasesy

55、base公司推出的企业级建模及设计工具,是一公司推出的企业级建模及设计工具,是一 种图形化的易于使用的种图形化的易于使用的casecase工具集,使用它可以方便地进行数据库工具集,使用它可以方便地进行数据库 的分析与设计。利用的分析与设计。利用powerdesignerpowerdesigner可以设计业务处理模型、数据可以设计业务处理模型、数据 流程图、概念数据模型、物理数据模型。为了方便数据库设计人员使流程图、概念数据模型、物理数据模型。为了方便数据库设计人员使 用用powerdesignerpowerdesigner进行数据库设计,进行数据库设计,powerdesignerpowerde

56、signer提供多种工具。提供多种工具。 同时同时powerdesignerpowerdesigner提供方便团队开发的辅助控制功能,如概念模提供方便团队开发的辅助控制功能,如概念模 型的合并与分解功能。另外利用型的合并与分解功能。另外利用powerdesignerpowerdesigner可以生成多种客户可以生成多种客户 端开发工具的应用程序,还可为数据仓库制作结构模型。端开发工具的应用程序,还可为数据仓库制作结构模型。 目前目前powerdesignerpowerdesigner已经推出已经推出powerdesignerpowerdesigner 12.0 12.0版本。版本。 2021-

57、5-1581 设计设计1 1 安装数据库设计工具安装数据库设计工具powerdesignerpowerdesigner 3 3设计内容设计内容 (1 1)获取)获取powerdesignerpowerdesigner的安装文件及产品注册信息。的安装文件及产品注册信息。 (2 2)安装)安装powerdesignerpowerdesigner。 (3 3)启动)启动powerdesignerpowerdesigner。 2021-5-1582 设计设计1 1 安装数据库设计工具安装数据库设计工具powerdesignerpowerdesigner 4 4问题解答问题解答 (1 1)powerde

58、signerpowerdesigner能够设计哪些模型?分别对应数据库设计的哪些能够设计哪些模型?分别对应数据库设计的哪些 阶段?阶段? 业务处理模型(业务处理模型(business process modelbusiness process model,bpmbpm) bpmbpm用于数据库设计的需求分析阶段。该模型包括层次结构图用于数据库设计的需求分析阶段。该模型包括层次结构图 (process hierarchy diagramprocess hierarchy diagram)和业务处理图()和业务处理图(business business process diagramprocess

59、 diagram)。)。 概念模型(概念模型(conceptual data modelconceptual data model,cdmcdm) cdmcdm用于数据库的概念结构设计阶段,表现数据库的逻辑结构。类用于数据库的概念结构设计阶段,表现数据库的逻辑结构。类 似数据库设计中的似数据库设计中的e-re-r图,图,cdmcdm独立于独立于dbmsdbms与应用软件。与应用软件。 物理模型(物理模型(physical data modelphysical data model,pdmpdm) pdmpdm用于数据库的逻辑设计和物理设计阶段,表现数据库的逻辑结用于数据库的逻辑设计和物理设计阶

60、段,表现数据库的逻辑结 构和物理结构。构和物理结构。pdmpdm提供操作提供操作pdmpdm(operational pdmoperational pdm)与智)与智 能商务能商务pdmpdm(business intelligence pdmbusiness intelligence pdm)。)。 面向对象模型(面向对象模型(object-oriented modelobject-oriented model,oomoom) powerdesignerpowerdesigner引进了引进了umluml,推出了一套符合,推出了一套符合umluml规范的图形。例规范的图形。例 如:用例图、活动

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论