SQL Server 2000上机任务.ppt_第1页
SQL Server 2000上机任务.ppt_第2页
SQL Server 2000上机任务.ppt_第3页
SQL Server 2000上机任务.ppt_第4页
SQL Server 2000上机任务.ppt_第5页
已阅读5页,还剩150页未读 继续免费阅读

下载本文档

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

文档简介

1、14.1 SQL Server 2000的安装与配置 14.2创建数据库和表 14.3管理数据表中的数据 14.4数据库一般查询 14.5 数据库复杂查询 14.6视图的使用,第十四章 上机指导,14.7 T-SQL编程. 14.8约束和索引的使用 14.9存储过程和触发器的使用 14.10游标的使用 14.11安全论证与访问权限 14.12 数据库备份,、实验目的与要求 (1)掌握SQL Server 服务器的安装。 (2)了解企业管理器的使用方法和界面。 (3)了解查询分析器的使用方法和界面。 (4)了解数据库及其对象的基本概况。,14.1实验一 SQL Server 2000的安装及配置

2、,、实 验 内 容 (1)安装SQL Server 2000步骤参照 1.3.3节。 (2)验证SQL Server 2000安装的正 确性单击“开始/ 程序/ Microsoft SQL Server”,可查看安装的组件。此时在 程序组里会出现Microsoft SQL Server 的管理工具,如图14-1。,()启动、停止和暂停SQL Server 服务器单击“开始/ 程序/ Microsoft SQL Server/服务管理器”,在打开的对 话框中单击服务器名称栏右边的下拉列 表,选择安装的服务器实例,如图14-2.,()建立到 SQL Server的连接 单击“开始/ 程序/ Mic

3、rosoft SQL Server/ 查询分析器”,在打开的对话框 中选择指定的身份验证模式。 ()利用企业管理器访问系统的 pubs数据库 1)启动SQL Server服务管理器,2)单击“开始/ 程序/ Microsoft SQL Server/ 企业管理器”,打开企业管理 器。 3)层层展开控制台根目录的目录树, 在安装的服务器实例名(如DXY)下选 择“数据库/pubs/表”对象,在右边窗口 选择“publishers”单击鼠标右键,在快,捷菜单中选择“打开表/ 返回所有行”, 查看其内容。 (6)利用查询分析器查看当前系统中 存在的所有数据库 1)单击“开始/ 程序/ Microso

4、ft SQL Server/ 查询分析器”,打开查询分析 器。,2)在对象浏览器的目录树中展开 “pubs”数据库对象,列出pubs数据库 的所有对象。 3)在“用户表”对象下选择 “dbo.authors”单击鼠标右键,在快捷 菜单中选择“打开”,查看该表内容。 4)在表的尾部添加一记录。,5)在查询分析器的输入窗口,输入 下面的T-SQL语句: USE pubs SELECT * from authors GO 单击工具栏中图标,查看执行结果。 (7)注册服务器 参见1.3.4节。,14.2实验二 创建数据库和表,、实验目的与要求 (1)了解数据库的逻辑结构和物理 结构。 (2)了解表的结

5、构特点及SQL Server的基本数据类型。,(3)掌握通过企业管理器界面创建 数据库和表的操作方法。 (4)掌握使用T-SQL语句创建数据 库和表的方法。,、实 验 内 容 (1)在企业管理器中创建数据库 启动企业管理器,展开控制台根 目录的树状结构,在“数据库”对象上 单击鼠标右键,在快捷菜单中选择 “新建数据库”,在打开的数据库属性 对话框中设置新数据库的属性。详细,步骤参照2.1.5节。 (2)在企业管理器中删除数据库 在企业管理器左边窗口中选择新 建的数据库traffic,单击鼠标右键, 在快捷菜单中选择“删除”。 (3)用T-SQL语句创建数据库 启动分析查询器,在查询窗口中,输入

6、正确的T-SQL语句,创建traffic 数据库(参照例2-2)。在企业管 理器中可查看数据库对象,观察该语 句执行结果。 (4)用T-SQL语句删除数据库 在分析查询器的查询窗口输入下 面T-SQL语句:,DROP DATABASE mytemp GO 在企业管理器中查看数据库对 象,观察该语句执行结果。 (5)在企业管理器中创建数据表确 定数据库traffic已创建好。,1)在企业管理器中展开层次结构 后,选择“数据库/ traffic/ 表”对象, 单击鼠标右键,在快捷菜单中选择 “新建表”。 2)在打开的新表对话框中输入表的 结构。 3)选择“驾照号”行,单击工具栏中,“设置主键”图标

7、。 详细步骤参照2.2.4节,表结构可 参照附录。 (6)用同样的方法建立表cd、cl、 xc和ddy。 (7)在企业管理器中删除表 在企业管理器左边窗口中选择,“数据库/ traffic/ 表”,在右边窗口中 选择要删除的表,单击鼠标右键,在 快捷菜单中选择“删除”。 (8)用T-SQL语句创建表jsy 启动分析查询器,在查询窗口 中输入正确的T-QL语句,创建表jsy (参照例2-10)。在企业管理器,中查看数据库的表对象,观察该语句 执行结果。 (9)用界面方式或命令方式(以下 同)创建学籍管理数据库xjgl。数据 库初始大小为10MB,最大为 150MB,数据库自动增长,增长方式 是按

8、10%比例增长,日志文件初始为,1BM,最大为5MB,按1MB增长,其 余参数自定。数据库中所包含的表如 下: 学生表:学号,姓名,性别,专业, 学分。 课程表:课程号,课程名,开课学期,学时,学分。,10将xjgl数据库的增长方式改为 5MB。 11将xjgl数据库中学生表的“学分” 列改为“总学分”列。 12在xjgl数据库的学生表中增加“出 生年月”列。,14.3实验三 管理数据表中的数据,、实验目的与要求 (1)掌握在企业管理器中对数据 表进行插入、修改和删除的编辑操 作。 (2)掌握用T-SQL语句管理表数 据的方法。,(3)了解数据更新时保持数据完 整性的意义。 (4)为后续实验准

9、备表数据(如 traffic数据库中驾驶员表jsy、车 辆表cl、行车表xc及车单表cd等 表的数据)。,、实 验 内 容 (1)在企业管理器中向表jsy中添 加数据行。 1)启动企业管理器,层层展开 树状结构,选择“数据库/ traffic/ 表”对象,在右边窗口中选择表 jsy,单击鼠标右键,在快捷菜单,中选择“返回所有行”。 2)在打开的表数据窗口输入每 行数据(可参照附录)。注意当 jsy表的驾照号列设置为主键,该 列的值不能有重复。 3)关闭表数据窗口。 (2)在企业管理器中更新表jsy中,的数据。 1)按上步的1)方法打开jsy 表数据窗口,可直接修改任意行和 列的数据。 2)单击

10、需删除行右边的行指 示器,该行反显,再按Delete键, 可删除该行。或在该行的行指示器,上单击鼠标右键,在快捷菜单中选 择“删除”。 3)单击菜单栏右边“关闭”图标, 关闭表窗口。 4)再次打开jsy表数据窗口,浏 览数据行,观察更新操作的结果。 (3)用T-SQL语句编辑表中数,据。每次运行T-SQL语句后,可打 开表数据窗口,观察更新操作的结 果。 1)在分析查询器的查询窗口输入 以下T-SQL语句,在表jsy中插入 记录。 INSERTINTOjsy,VALUES(0011103,王文, 汽车指挥, 1983-12-03, 北 京,02001,30,是,NULL) 2)在分析查询器的查

11、询窗口 输入以下T-SQL语句,修改记录的 字段。 UPDATE jsy,SET 所学专业“汽车运用”WHERE“汽车指挥” GO 3)在分析查询器的查询窗口输 入正确的T-SQL语句,删除表jsy 中某些行。 DELETEFROMjsy,WHERE 所学专业“汽车运用” GO GO ()用界面方式或命令方式完成 以下操作。 1)将jsy表中积分在20以下的 人员删除。,2)将jsy表中备注为空的记录删 除。 3)将jsy表中所有记录的积分均 加2分。 4)添加traffic数据库中其余各 表的数据(可参照附录)。,注意不要轻易使用 TRUNCATETABLE命令, 以防将来用到这些数据时需重

12、新输 入。当对表设置了主键,添加、修 改或更新表数据时必须保持数据完 整性。,、实验目的与要求 (1)掌握SELECT语句基本子句 的使用方法。 (2)掌握设置列的输出格式及控 制行数的方法。 (3)掌握比较运算、匹配运算和,14.4实验四 数据库简单查询,限止范围的行筛选方法。 (4)掌握输出数据排序的方法。 (5)掌握对多表进行自然连接、 内连接、外连接及左外连接、右外 连接的方法。 (6)掌握分组统计GROUPBY 子句的简单用法。,、实 验 内 容 (1)基本查询操作 1)在分析查询器的查询窗口输入 如下T-SQL语句,查询cl表中所有 的车辆类别名称,消除重复行。 SELECT DI

13、STINCT 类别 AS “现有类别”,FROM cl 2)在分析查询器的查询窗口输入 如下T-SQL语句,查询jsy表中积 分在25和30之间的驾驶员的驾照 号、姓名和积分。 SELECT驾照号,姓名,积分 FROMjsy,WHERE积分!30 3) 在分析查询器的查询窗口输 入如下T-SQL语句,查询驾照号 以002开头且姓高的驾驶员的情 况。 SELECT驾照号,姓名,积分 FROMjsy,WHERE驾照号 LIKE 002% AND 姓名 LIKE 高% (2)多表连接查询操作 )在分析查询器的查询窗口输 入如下T-SQL语句,查询每次出 车的日期、目的地和行程情况。,SELECT x

14、c.*,cd.* FROM xc,cd WHERE xc.出车单号=cd.出车 单号 2) 在分析查询器的查询窗口输 入如下T-SQL语句,查询2003 年2月15日前车辆的出行情况, 包括车牌,号、日期、目的地和驾驶员姓 名。 SELECT xc.车牌号, cd.日期, cd.目的地, jsy. 姓名 FROM xc, cd, jsy WHERE cd.日期2003-2-15 AND cd.出车单号=xc.出车单号,AND xc.主驾=jsy.驾照号 3)在分析查询器的查询窗口输 入如下T-SQL语句,查询每个出车的驾驶员的姓名和出车情况。 SELECT jsy.姓名, 车牌号, 出车单号

15、FROM jsy INNER JOIN xc,ON jsy.驾照号=xc.驾照号 4)在分析查询器的查询窗口输 入如下T-SQL语句,查询所有汽 车指挥专业驾驶员情况及他们的 出车单号,若未出车,也要包括 其基本情况。 SELECT jsy.*, 出车单号,FROM jsy LEFT OUTE JOIN xc ON jsy.驾照号=xc.主驾 WHERE 所学专业=汽车指挥 (3)分类汇总操作 1)在分析查询器的查询窗口输 入如下T-SQL语句,查询车辆表 cl中各类别的车有多少辆。,SELECT 类别, COUNT(*) AS 数量 FROM cl GROUP BY 类别 2)在分析查询器的

16、查询窗口输 入如下T-SQL语句,查询所有驾 驶员的驾照号、姓名和出车次数。,SELECT xc.主驾,jsy.姓名, COUNT(*) FROM xc,jsy WHERE xc.主驾=jsy.驾照号 GROUP BY xc.主驾,jsy.姓名 3) 在分析查询器的查询窗口输入 如下T-SQL语句,对于天津籍驾驶,员按所学专业统计平均积分,查 询平均积分在25分以上的所学专 业和其平均积分。 SELECT 所学专业, 平均积 分=AVG(积分) FROM jsy WHERE 籍贯=天津,GROUP BY所学专业 HAVING AVG(积分)25 (4)自行完成以下操作。 1)查询曾单人驾车的驾

17、驶 员的姓名。 2)查询所有车辆的累计里 程,并按降序排列。,3)按所学专业和是否见习分组 统计驾驶员人数。 4)查询2003年2月15日 2003年4月15日之间出车驾驶 员姓名。 5)查询所有汽车指挥专业 驾驶员情况及他们的出车单号, 若未出车,也要包括其基本情况。,、实验目的与要求 (1)加深理解在SELECT语句 中,用WHERE子句筛选行的条件 表达式应用。 (2)掌握通过IN、 EXSITS关键 字和比较运算符进行子查询,实现,14.5实验五 数据库高级查询,多表复杂查询的方法。 (3)掌握使用GROUP By子句中 WITHCUBE | ROLLUP选项进行 复杂统计汇总的方法。

18、 (4)掌握HAVING子句的用法。 (5)掌握COMPUTE BY子句的 用法。,、实 验 内 容 (1)用IN关键字查询 在分析查询器的查询窗口输 入如下T-SQL语句,查询指派 “AX1320”车的所有调度员的姓 名、职务和电话。 SELECT 姓名, 职务, 电话,FROM ddy WHERE 调度号 IN (SELECT DISTINCT调度号 FROM xc WHERE 车牌号=AX1320) (2)用EXISTS关键字查询 在分析查询器的查询窗口输入,如下T-SQL语句,查询出车单号 为“7013”的所有主驾的姓名、 籍贯和积分。 SELECT 姓名, 籍贯, 积分 FROM j

19、sy WHERE EXISTS (SELECT 主驾,FROM xc WHERE 主驾=jsy.驾照号 AND 出车单号=7013) (3)用比较运算符查询 在分析查询器的查询窗口输入如 下T-SQL语句,查询积分不低于 王明、高兵、刘可的所有驾驶员,驾照号和姓名。 SELECT 驾照号,姓名 FROM jsy WHERE 积分 ALL( SELECT 积分 FROM jsy WHERE 姓名 IN (王明,高,兵, 刘可) (4)分组统计选取 在分析查询器的查询窗口 输入如下T-SQL语句,统计天津 籍驾驶员各专业的平均积分,查 询平均积分在25分以上的专业 和其平均积分。,SELECT 所

20、学专业, 平均积 分=AVG(积分) FROM jsy WHERE 籍贯=天津 GROUP BY所学专业 HAVING AVG(积分)25 (5)浏览统计数据,在分析查询器的查询窗口输 入如下T-SQL语句,统计天津籍 和北京籍驾驶员的平均积分。 SELECT籍贯,积分 FROM jsy WHERE 籍贯 IN (天津,北京) ORDER BY籍贯,COMPUTE AVG(积分) BY籍贯 在上面SQL语句的最后一行 取消“BY籍贯”选项,再运行, 观察统计结果有何不同。 (6)自行完成以下操作。 1)查询由孙平调度的所有出 车驾驶员的姓名。,2)查询积分不高于刘可和张平 的所有驾驶员的姓名、

21、驾照号和积 分。 3)查询有两次以上出车经验的 驾驶员的姓名。,、实验目的与要求 1)掌握视图的建立、修改和删除 操作。 2)掌握使用视图查询基本表数 据。 3)掌握可更新视图的定义和使用 方法。,14.6实验六 视图的使用,、实 验 内 容 (1)在企业管理器中创建、修 改和删除视图的操作 1) 打开企业管理器,层层展 开树状结构,在“数据库/ traffic/ 视图”对象上单击鼠标上右键,在 快捷菜单上选择“新建视图”,出,现新建视图窗口。可以SQL子窗口 中输入创建视图的SQL语句,或在 关系图窗口添加表,在网格窗口选 择列,单击工具栏中“运行”图标。详细步骤参见4.3.2节。 2)在企

22、业管理器中左边窗口 中选择“数据库/ traffic/ 视图”对,象,在右边窗口中新创建的视图上 单击标上右键,在快捷菜单上选择 “返回所有行”,可以浏览和修改视 图数据。 3)在企业管理器左边窗口选 定“视图”对象,在右边窗口中需修 改的视图上单击标上右键,在快捷,菜单上选择“设计视图”,出现设计 视图窗口,可重新设计视图结构。 4)在企业管理器左边窗口选 定“视图”对象,在右边窗口中需删 除的视图上单击标上右键,在弹出 的快捷菜单上选择“删除”,即可删 除视图。,(2)用T-SQL语句建立视图的操作 1) 在分析查询器的查询窗口输入 正确的T-SQL语句,创建“汽车指 挥”专业驾驶员的基本

23、情况视图 jsy_01v(参照例4-58)。 2) 在分析查询器的查询窗口,输入正确的T-SQL语句,创建出车 驾驶员的出车基本情况视图 jsy_xcv(参照例4-57)。 (3)在视图中查询 )在分析查询器的查询窗口 输入正确的T-SQL语句,浏览视图 jsy_01v。,2) 在分析查询器的查询窗口 输入如下T-SQL语句,在视图 jsy_xcv中查询车牌号以AX开头的 驾驶员姓名。 SELECT 姓名, 车牌号 FROM jsy_xcv WHERE车牌号LIKE AX%,(4)分组统计选取 在分析查询器的查询窗口输入 如下T-SQL语句,统计天津籍驾驶 员各专业的平均积分,查询平均积 分在

24、25分以上的专业和其平均积 分。 SELECT 所学专业, 平均积,分=AVG(积分) FROM jsy WHERE 籍贯=天津 GROUP BY所学专业 HAVING AVG(积分)25 (5)自行完成以下操作。 1)删除jsy_01v视图中驾照,号为002013的驾驶员记录。 2)创建名为view001小轿车 的出车视图,包括车牌号、日期、 目的地、实际行程及主驾。 3) 在视图view001查询 AX1320车的出车记录。 4)删除视图jsy_01v和 view001视图。,、实验目的与要求 1)掌握用户自定义数据类型的建 立和使用方法。 2)掌握字符函数、时间日期函 数、聚合函数和判定

25、函数等系统常 用函数的使用。,14.7实验七 T-SQL编程,3)掌握用户自定义函数的创建和 调用方法。 4) 掌握各种流程控制语句的使 用。,、实 验 内 容 (1)使用系统函数辅助查询 1)在分析查询器的查询窗口 输入以下语句,并执行。 SELECT POWER (2,8), POWER(2, 16), POWER(2, 10), POWER(2,20),2)在分析查询器的查询窗口 输入以下语句,用随机函数产生三 个随机数,并分别四舍五入输出4 位、5位、6位小数。 DECLARE number smallint SET number=1,WHILE number=3 BEGIN SELE

26、CT ROUND(RAND(number), number+3) SET number=number+1,END GO 3)在分析查询器的查询窗口 输入以下语句,查询调度员的职 务。 SELECT LEFT(姓名, )+ LEFT(职务,3),FROM ddy 4)在分析查询器的查询窗口 输入以下语句,查询驾驶员年龄。 SELECT 姓名, DATEDIFF(year, 出生年月,GETDATE() AS 年龄 FROM jsy WHERE 驾照号=002011,(2)自定义数据类型的创建和使 用 定义一个新的数据类型 jsy_id,该类型名为jsy_id,为字 符型char(6),非空属性。

27、 可以用企业管理器界面方式和 SQL语句的命令方式建立该数据类,型,操作步骤如下: 1)用界面方式建立数据类型 jsy_id。在企业管理器中选择数据 库对象“traffic”下的“用户自定义 数据类型”对象,单击鼠标右键, 在快捷菜单上选择“新建用户自定 义数据类型”,如图14-3。,2)在打开的用户定义数据类 型属性对话框中输入新数据类型 名,选择数据类型为char,长度 为6,勾选允许空选项,单击“确 定”按钮,如图14-4。,3)在企业管理器右边窗口出 现用户定义数据类型jsy_id对象。 如图14-5。在其上单击鼠标右键, 在快捷菜单中选择“删除”。,4)用命令方式建立数据类型 jsy

28、_id。打开分析查询器,在查询 窗口输入下面语句并执行: USEtraffic EXEC sp_addtype jsy_id, char(6), not null GO 执行结果如图14-6。,5)在查询窗口输入以下语句新 建表jsy_1,其中驾照号列使用数 据类型jsy_id。 CREATETABLEjsy_1 ( 驾照号jsy_id, 姓名char(8) NOT NULL, 地址char(20)) GO 如图14-7,此时表jsy_1为空表。,(3)自定义函数的创建和使用 1)在分析查询器的查询窗口 中输入正确的T-SQL语句并执行, 定义一个函数average(),用于计 算指定专业的平

29、均积分(参照例 6-1)。 2)在对象浏览器窗口中,展,开traffic数据库下的“函数”对象, 可见到average()函数对象。 3)在分析查询器的查询窗口 中输入下面语句,通过调用 average()函数查询汽车管理专业 的平均积分,并根据平均积分大 小,修改表jsy中的积分列。,USE traffic declare num int SELECT num=dbo.average (汽车管 理) If num25 update jsy set 积分积分+2,where 所学专业汽车管理 else if num20 update jsy set 积分积分-2 where 所学专业汽车管理

30、GO SELECT * FROM jsy,GO 观察执行结果。 4) 在分析查询器的查询窗口 中输入正确的T-SQL语句并执行, 定义一个表值函数havejsy(),用 于返回指定籍贯的所有驾驶员的姓 名和驾照号(参照例6-2)。 5)在分析查询器的查询窗口,中输入下面语句,通过调用 havejsy()查询来自天津的所有驾 驶员的驾照号、姓名。 SELECT * FROM dbo.havejsy(天津) 观察执行结果。 (4)自行完成以下操作。 1)查询驾驶员年龄。,2)查询所有车辆的前两位字符和 启用年代中的年份数字。 3)定义一个函数,返回任意指定 的字符串的字符个数。 4)自定义一个表型

31、函数,它输入 变量为姓名的第1个的汉字,其返 回值为该姓所有驾驶员的姓名和驾 照号。,14.8实验八约束与索引的使用,、实验目的与要求 1)掌握数据完整性概念。 2)掌握缺省、规则、默认值的建 立和使用方法。 3)掌握各种约束的建立和使用方 法。 4)掌握创建索引的方法。,、实 验 内 容 (1)使用缺省对象 1)在查询分析器的查询窗口 输入T-SQL语句,创建缺省对象, 默认字符型数据“天津”。 CREATE DEFAULT def_come,AS “天津” 2)将其绑定到籍贯列,使籍 贯列的取值默认为“天津”。 EXEC SP_BINDEFAULT def_come, jsy.籍贯 3)用

32、企业管理器打开jsy表, 输入一行数据,观察籍贯列的默认,值情况。 (2)使用规则对象 1)在查询分析器的查询窗口 输入T-SQL语句,创建规则对象, 规定取值可为“小轿车”、“小客车” 和“大客车”。 CREATE RULE rul_lb,AS lb IN (小轿车, 小客车, 大客车) )绑定到车辆表的类别列, 使类别的取值只能为其中之一。 EXEC SP_BINDRULE rul_lb , cl.类别 3)用企业管理器打开cl表,,输入一行数据,检查类别列规则 的效果。 (3)创建主键约束 1)在查询分析器的查询窗口 输入T-SQL语句,修改jsy表,增 加驾照号的主键约束。 ALTER

33、 TABLE jsy,ADD CONSTRAINT pkey_jsyPRIMARY KEY CLUSTERED (驾照号) 2)打开jsy表,输入一行数 据,检查驾照号列的主键约束情 况。 (4) 创建外键约束,1)在查询分析器的查询窗口 输入T-SQL语句,创建表 xc_temp,并建立复合主键约束。 CREATE TABLE xc_temp ( 驾照号 char(6) NOT NULL, 车牌号 char(8) NOT NULL, 调度号 char(4) NULL,行程 smallint NULL, CONSTRAINT pkey_ xc_temp PRIMARY KEY (驾照号, 车牌

34、号) ) GO 2)修改表xc_temp,增加外 键约束。,ALTER TABLE xc_temp ADD CONSTRAINT fkey_ xc_temp1 FOREIGN KEY (车牌号) REFERENCES cl (车牌号) ON UPDATE CASCADE,GO 3)用企业管理器打开 xc_temp表,输入一行数据,观察 车牌号列的外键约束情况。 (5) 使用CHECK约束 1)在查询分析器的查询窗口 输入T-SQL语句,修改表jsy,增,加CHECK约束ck_birth,使出生 年月列的取值在系统当前日期之 前。 ALTER TABLE jsy_temp5 ADD CONSTR

35、AINT ck_telh CHECK出生年月,=CURRENT_TIMESTAMP) GO 2)用企业管理器打开jsy表, 输入一行数据,观察出生年月列的 约束情况。 3) 在查询分析器的查询窗口 输入T-SQL语句,禁用ck_birth约,束。 ALTER TABLE xc_temp NOCHECK CONSTRAINT ck_birth 4) 用企业管理器打开jsy表, 输入一行数据,观察出生年月列的 约束情况。,5) 在查询分析器查询窗口输 入T-SQL语句,删除ck_birth约。 ALTER TABLE jsy DROP CONSTRAINT ck_birth (6)在企业管理器中完

36、成以下操作 1)创建规则对象,规定取值 可以为“汽车指挥”、“汽车管理”或,“汽车维修”。并绑定到所学 专业列,使所学专业列的取值只能 为其中之一。 2)驾驶员表的驾照号列设定 非空并有主键约束。 3)为jsy表驾照号列创建索引。 4)为cl表车牌号列创建唯一聚,集索引。 5)打开表cl,对驾照号和车 牌号列值做修改,如果输入了重复 的键,系统将取消该重复键的修改 或插入操作。 6)删除上面建立的规则、约 束和索引。,、实验目的与要求 1)掌握存储过程的类型和作用。 2)掌握存储过程的创建与调用方 法。 3)掌握触发器的类别和作用。 4)掌握触发器的创建与调用方 法。,14.9实验九存储过程和

37、触发器的使用,、实 验 内 容 (1)存储过程的使用 1) 在查询分析器的查询窗口 输入正确的T-SQL语句,建立一个 存储过程xclist1,该存储过程返回 所有驾驶员的驾照号、姓名和各次 出车行程(参照【例9-1】)。,2)在查询分析器的查询窗口 输入下面语句调用存储过程 xclist1,查询traffic数据库中驾驶 员的驾照号、姓名和各次出车行 程。 EXECUTE xclist1 3)在查询分析器的查询窗口,输入下面语句删除存储过程xclist1 存储过程。 USE traffic DROP PROCEDURE xclist1 GO (2)在企业管理器中通过界面方 式完成上面步骤。参

38、见9.1节。,(3)触发器的使用 1)在查询分析器的查询窗口 输入正确的T-SQL语句,在jsy表 中创建一触发器jsy_updtri,若对 驾照号和姓名列修改则给出提示信 息,并取消操作。(参照【例9- 14】)。,2)在企业管理器中打开表 jsy,修改姓名和驾照号列的数 据,观察执行结果。 3)在查询分析器的查询窗口 输入下面语句,删除jsy表上定义 的jsy_updtri触发器。 USE traffic,DROP TRIGGER jsy_updtri GO (4)在企业管理器中通过界面方式 完成上面步骤。参见9.2节。 (5)自行完成以下操作。 1)建立一存储过程,查询指定,2)在企业管

39、理器中打开表 驾照号的驾驶员的姓名和积分。 3)对xc表创建一触发器,如插 入记录的驾照号不是jsy表的驾照 号列的取值,或车牌号不是cl表中 的车牌号,则消该记录的插入操作。,、实验目的与要求 1)掌握游标的概念和游标类型。 2)掌握游标的声明、打开、关闭和 删除的方法。 3)掌握通过游标读取数据和修改数 据的方法。,14.10实验十游标的使用,、实 验 内 容 (1)在查询分析器的查询窗口输入 下面语句,声明一键集驱动游标, 选取“汽车指挥”专业的驾驶员的驾 照号、姓名和积分,可对积分进行 修改。 DECLARE jsy_cur CURSOR,KEYSET FOR SELECT 驾照号,

40、姓名, 积分 FROM jsy (2)在查询分析器的查询窗口输入 下面语句,打开游标,测试游标内 数据行数。,OPEN jsy_cur SELECT 游标内数据行数 =CURSOR_ROWS (3)在查询分析器的查询窗口输入 下面语句,提取游标内数据。 FETCH NEXT FROM jsy_cur (4)在查询分析器的查询窗口输入,下面语句,提取游标内数据,并测 试系统状态。 FETCH LAST FROM jsy_cur SELECT FETCH执行状态 =FETCH_STATUS (5)修改游标数据。 1)在查询分析器的查询窗口输入下,面语句,定义可修改游标 DECLARE up_jsy

41、_cur CURSOR LOCAL SCROLL SCROLL_LOCKS FOR SELECT 驾照号, 姓名, 积分,FROM jsy FOR UPDATE OF 积分 OPEN up_jsy_cur 2) 在查询分析器的查询窗口输入下 面语句,打开游标,修改游标内数 据。 FETCH LAST FROM up_jsy_cur,UPDATE jsy SET 积分=21 WHERE CURRENT OF up_jsy_cur 3)用SELECT 语句查询修改后的 数据。 SELECT* FROM jsy (6)在查询分析器的查询窗口输入,下面语句,关闭上一步创建的游 标。 CLOSE up_

42、jsy_cur (7)在查询分析器的查询窗口输 入下面语句,删除游标。 DEALLOCATE jsy_cur,、实验目的与要求 1)掌握管理SQLServer登录帐号 的方法。 2)掌握设置用户可访问的和不可访 问的数据库的方法。 3)掌握管理角色和角色成员的方。 4)掌握设置用户权限的方法。,14.11实验十一安全认证与访问权限,、实 验 内 容 (1)创建Windows2000登录账 号。 1)Windows2000桌面,开始、 程序、管理工具、计算机管理, 打开计算机管理窗口,在本地用 户和组下创建一用户账号qtest。,2)在查询分析器的查询窗口输入下 面语句,建立该用户的信任连接。

43、EXEC sp_grantlogin DXYqtest 3)打开企业管理器,选择服务 器、安全性、登录对象,可浏览 所有登录账号。,(2)建立SQL Server认证的登录 账号 1)在查询分析器的查询窗口输入下 面语句,建登录账号为dong,密 码为qqq,指定默认数据库 为traffic。 EXECsp_addlogin dong, qqq,traffic 2)在企业管理器中,选择服务器、 安全性、登录对象,可浏览所有登 录帐号。 (3)显示登录者信息 在查询分析器的查询窗口输入 下面语句,则列出目前数据库的所,有登录者的信息。 EXEC sp_helplogins (4)添加固定服务器角色成员 在查询分析器的查询窗口输 入下面语句,将DXYqtest添加到 sysadmin固定服务器角色中。 EXEC,sp_dropsrvrolemember DXYqtest, sy

温馨提示

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

评论

0/150

提交评论