2024年3月6日发(作者:)
实验1. 注册、配置服务器
实验课时:2 类型:验证
实验目的:熟练使用企业管理器、查询分析器与SQL SERVER 2000实例连接,进行服务器的注册和配置。
实验步骤:(按照课本第二、第三章具体的操作步骤进行)
一、启动和停止SQL Server服务
(1) 使用服务管理器进行SQL Server启动
(2) 使用命令行方式启动
(3) 更改SQL Server服务账号
二、注册服务器和创建服务器组
(1) 在企业管理器中注册SQL Server服务器
(2) 在企业管理器中创建两个新服务器组
(3) 进行实例的连接
实验报告:
1.将SQL Server服务器启动的窗口进行截图,将加以说明。
2.将创建服务器组的成功窗口进行截图,将加以说明。
3.记录你在实验中用到企业管理器和查询分析器和服务管理器的功能。
4.总结出以上三个工具的用法。
实验2. 管理数据库
实验课时:2 类型:验证
实验目的:掌握数据库的创建、修改、删除和配置等操作
实验步骤:(参照课本P51-63页具体操作步骤)
一、使用企业管理器创建、查看、修改、删除一个数据库.
二、使用查询分析器用语句创建一个数据库。
三、用企业管理器查看四个系统数据库。
实验报告:
1. 将用建立成功的数据库的属性窗口进行截图,并进行说明。
2. 说明你在创建数据库时所用到的参数,并说明具体用法。
3. 说明日志的功能与使用方法
实验3.表的创建与数据维护
实验课时:3 类型:验证
实验目的:分别通过企业管理器和查询分析器在用户数据库中创建、修改、删除数据表。
实验步骤:(参照课本P72-91页具体操作步骤)
一、使用creat table语句创建表
二、使用企业管理器创建表、查看表、修改表、删除表
三、使用查询分析器创建表、查看表、修改表、删除表
实验报告:
1. 将你所建立的表的属性窗口进行截图,并进行说明。
2. 将你建立的Market数据库中的三个表的依赖关系进行截图,并进行说明。
实验4.表的查询
实验课时:2 类型:验证
1
实验目的:训练用户编写基础SQL语句能力,掌握通过企业管理器和查询分析器查询数据
实验步骤:
一、请查询pubs数据库中authors表里,作者的姓(au_lname)、名(au_fname)和电话号码(phone);
二、请查询本地服务器使用的语言,可利用全局变量@@LANGUAGE。
三、请使用TOP关键字,从Northwind 数据库中的customers表中搜索返回前20%的数据。
四、请查询Northwind数据库中的Orders表中的数据,并将其中的货物重量freight增加50%.
五、请查询NorthWind数据库Employees表中所有雇员的FirstName和LastName,并按生日BirthDate从小到大进行排序。
六、请使用where书句从Northwind数据库中的products表中检索出所有单位的价格(UnitPrice)超过50美元的货物名称(ProducrName)、货物代号(ProductID),以及每单位重量(QuantityPerUnit)。
七、将以上操作用企业管理器进行完成。
实验报告:
1. 要求用户首先自己独立编写SQL语句,并能够编译、纠错、执行。
2. 记录每个步骤的SQL语句,可以用截图形式或文本语句。
实验5. 视图的操作
实验课时:2 类型:验证
实验目的:掌握视图的定义、修改和更新的操作
实验步骤:
一、 在Northwind 数据库中建立如下三个视图:
1. 在customers表基础上建立视图customer_view,要求只显示CustomerID,CompanyName,ContactName和Phone,Fax.
2. 在customers表和orders表的基础上建立视图customer_order_view,要求显示所有Freight(Orders表中列)超过50的订单的客户信息(包括CustomerID,
CompanyName,ContactName和Phone,Fax)和订单信息(包括OrderID,OrderDate,Freight,ShipName,ShipCountry).
3. 在customer_view视图和orders表的基础上,建立视图customer_order_view_2,要求所有Freight(Orders表中的列)超过50的订单的客户信息(包括CustomerID,
CompanyName,ContactName和Phone,Fax)和订单信息(包括OrderID,OrderDate,Freight,ShipName,ShipCountry)。
二、 练习使用图形化的视图设计界面进行视图的创建
三、 删除视图,重新创建视图,对视图进行加密
实验报告:
1. 请阐述使用视图对程序设计带来的好处。
2. 请分析和列举修改视图不成功可能的情况,至少要举出三种。
3. 当视图引用的表被删除后,视图是否还可以正常工作?为什么?如果用户又重新建立了与原表相同的新表后,怎样才能够使视图恢复正常工作?(用实验来进行验证解答)
实验6. 在库中使用规则和约束
实验课时:4 类型:验证
实验目的:在表中创建不同类型索引及约束
2
实验步骤:
一、 练习主键约束
1.请在数据库mydb1中创建四张表,每张表的结构如下:
teacher
名称
name
sex
birthdate
age
Students
名称
age
name
id(主键)
sex
名称
student_id
test_id
teacher_id
score
名称
test_id(主键)
test_name
数据类型
int
char
int
char
数据类型
int
int
int
int
大小
4
10
4
10
大小
4
4
4
4
是否空值
是
是
否
是
是否空值
是
是
是
是
大小 是否空值
4
10
否
是
数据类型 大小
4
10
7
4
char
char
int
是否空值
否
是
是
是
是
teacher_id(主键) int
datetime 8
test_score
Test
数据类型
int
char
1. 请使用sp_pkey命令查看students上的主键信息;
2. 请使用企业管理器删除主键。
3. 请使用SQL命令重新建立主键,还是设置在id上。
二、 练习unique约束
1. 使用企业管理器在表test_score上建立一个UNIQUE约束,约束定义在列(test_id和score)上。
2. 请使用T_SQL删除UNIQUE约束。
3. 请使用T_SQL重新建立刚才删除的UNIQUE约束
三、 练习使用CHECK约束
1. 使用企业管理器建立一个CHECK约束,对test_score中的scord加以限制,不允许score的成绩低于0分,高于100分;
2. 请在表test_score中插入的数据(1,1,1,20)和(2,2,2,101),将执行结果截图并加以文字说明。
3. 使用T_SQL删除刚才建立的约束,然后再插入刚才没有能够插入的值,将执行结果截
3
图并加以文字说明。
四、 练习使用外键约束
1. 请使用企业管理器,建立一个关系图,建立teacher,test,test_score三个表之间的外键约束关系。要求teacher表中的主键teacher_id是表test_score的外键,test表中的主键test_id是表test_score的外键。
2. 使用sp_fkeys查看表teacher和表test_score上的外键。
3. 请在表test_score中输入数据(1,1,1,100),观察操作是否成功。
4. 在表test中插入数据(1,’maths’),在表teacher中输入数据(1,’Jack’,’male’,34),后,再在表test_score中输入数据(1,1,1,100),观察操作是否成功。
五、 练习规则的应用
1. 请创建一个规则sex_rule,规定sex的数据只能是male或female。
2. 使用企业管理器绑定规则sex_rule与teacher表中的sex列。
3. 请在表teacher中输入如下数据(2,’Mark’,’man’,32),观察操作结果。
六、练习标识列的应用
1.请用企业管理器修改表students,把列id设置为标识列
2.请在表students中插入数据(11,’Jack’,’male’)和(’Mike’,’male’),观察操作结果。
实验报告:
1. 将上述的每个实验结果进行截图,并进行说明。
2. 谈谈你对数据库完整性的认识。
实验7. 存储过程和触发器的使用
实验课时:2 类型:设计
实验目的:掌握存储过程和触发器的定义、使用、修改、删除等操作。
实验步骤:
1. 请使用企业管理器在pubs数据库中创建一个名为proc_test1的存储过程,执行的功能是从authors和titles表中查询出作者的信息以及该作者所写的所有书的信息。
2. 使用查询分析器编写一个触发器,tr_wordks_delete,每当workers表中的新删除一行数据的时候,workers_bk表中的同一行数据也将删除。
3. 请使用企业管理器查看触发器tr_workers_delete的内容,并将该触发器的内容加密。
实验报告:
1.请阐述使用存储过程的优越性主要体现在哪些方面?
2.请比较存储过程和触发器的差异。
实验8 SQL Server的安全方案
实验课时:2类型:验证
实验目的:掌握角色、用户、权限的概念及完成安全方案的制订。
实验步骤:
一、用企业管理器创建一个数据库MARKET,其内容与NORTHWIND库内容完全一样,可以用导入/导出数据功能完成。
二、使用SQL Server特有的安全机制。
1. 首先新建u1、u2、u3三个数据库服务器登录账号,请记住这三个用户的密码。
2. 在安全性中设置“BUILTINAdministrators”的安全性访问选项为“拒绝访问”,设置
4
服务器安全验证模式为“仅使用SQL Server身份验证”。
3. 这样该数据库服务器必须用SQL Server提供的账号进行登录,而无法用Windows连接。
4. 用SQL Server提供的账号进行连接登录,将结果截图;再用“Window身份验证”进行连接登录,将结果截图。
三、制订MARKET数据库的安全使用方案
1. 在MARKET数据库的用户中加入u1、u2、u3三个用户。
2. 将u1的角色仅为public,用u1登录,观察其使用权限,截图并用文字进行说明。
3. 将u2的角色设为db_owner, 用u2登录,观察其使用权限,截图并用文字进行说明。
4. 再添加一新角色newrole,该角色仅有customers、orders的select权限,再把u3加为newrole的成员。用u3登录,观察其使用权限,截图并用文字进行说明。
四、通过上述实验,说说你对SQL Server的安全的认识。
5


发布评论