数据库实验指导—SQL - Server - 2008(5)

2019-04-23 10:11

图6

下面的语句用来验证“sc”表中的实体完整性: insert into sc values('95002', '10',65) insert into sc values('95002', '10',90)

图7

2. 域完整性:

使用下面的语句验证“ssex”字段的域完整性:

insert into student values('95009','张匀','大',20,'CS', ‘42222919901012904X’)

3.参照完整性: 使用下面的语句“验证”sc表中的“sno”字段的域完整性(假设student表中没有学号为“95998”的学生记录):

insert into sc values('98998', '10',98)

四、实验任务:

1、建立课程的实体完整性, 和课程号cno的参照完整性;

2、对HRM数据库,练习建立三个表的主外键约束、唯一约束、取空值约束、用户自定义的约束(参考HRM数据库表定义图中说明);

3、建立salary表的Income字段限定在0-9999之间。

五、实验报告要求

1、写出与上述任务相对应的SQL语句

2、并记录在实验过程中遇到的问题、解决办法及心得体会。

3.2 数据库安全性管理

一、实验目的

? ? ? ?

掌握SQL Server身份验证模式。

掌握创建登录账户、数据库用户的方法。 掌握使用角色实现数据库安全性的方法。 掌握权限的分配。

二、实验内容

1、设置身份验证模式:Windows身份验证模式和混合模验证模式。 2、设置登录账户 3、设置数据库用户 4、设置数据库角色。 5、设置管理对象的权限

三、实验步骤

1.设置身份验证模式

? 依次单击开始->所有程序->SQL Server 2005->SQL Server Management Studio

启动SQL Server 2005数据库管理系统 ? 连接成功后,右键你的实例,选择\属性\

? 在\属性\窗口中, 转到\安全性)项,在\服务器身份验证\中设置为\

Server和Windows身份验证模式\, 确定,根据提示,应该重新启动sql服务 ? 然后执行下面的语句启用sa用户, 同时清除sa的密码(能成功登陆后再根据你的需

要设置)

EXEC sp_password null,null,'sa' ALTER LOGIN sa ENABLE

? 语句执行完成后, 再用sa连接你的实例, 应该就没有问题了. 2.设置登录账户

? 创建使用 Windows 身份验证 (SQL Server Management Studio) 的 SQL Server 登

录名

? ?在 SQL Server Management Studio 中,打开对象资源管理器并展开要在其中

创建新登录名的服务器实例的文件夹。

? ?右键单击“安全性”文件夹,指向“新建”,然后单击“登录名”。 ? ?在“常规”页上的“登录名”框中输入一个 Windows 用户名。 ? ?选择“Windows 身份验证”。 ? ?单击“确定”。

? 创建使用 SQL Server 身份验证 (SQL Server Management Studio) 的 SQL Server

登录名

? ?在 SQL Server Management Studio 中,打开对象资源管理器并展开要在其中

创建新登录名的服务器实例的文件夹。

? ?右键单击“安全性”文件夹,指向“新建”,然后单击“登录名”。

?在“常规”页上的“登录名”框中输入一个新登录名的名称。 ?选择“SQL Server 身份验证”。 ?输入登录名的密码。

?选择应当应用于新登录名的密码策略选项。通常,强制密码策略是更安全的选择。

? ?单击“确定”。

? 通过 Transact-SQL 创建使用 Windows 身份验证的 SQL Server 登录名

? ?在查询编辑器中,输入以下 Transact-SQL 命令:CREATE LOGIN

Windows User> FROM WINDOWS; GO

? 通过 Transact-SQL 创建使用 SQL Server 身份验证的 SQL Server 登录名

? ?在查询编辑器中,输入以下 Transact-SQL 命令:CREATE LOGIN

name> WITH PASSWORD = '' ; GO

3.设置数据库用户

? 创建数据库用户

? 在 SQL Server Management Studio 中,打开对象资源管理器并展开要在其中

创建新登录名的服务器实例的文件夹。 ? 依次展开数据库,某个具体数据库,“用户” ? 右键单击用户,选择“新建用户” ? 输入用户名,选择登录名,确定 ? 通过 Transact-SQL 创建数据库用户(create user): create user dba for login dba with

default_schema=dbo

? 并指定数据库用户“dba” 的默认 schema 是“dbo”。这意味着 用户“dba”

在执行“select * from t”,实际上执行的是 “select * from dbo.t”。

4设置数据库角色

? 新建角色

? 在 SQL Server Management Studio 中,打开对象资源管理器并展开要在其中

创建新登录名的服务器实例的文件夹。 ? 依次展开数据库,某个具体数据库,“角色” ? 右击选中新建角色

? 通过 Transact-SQL新建角色:CREATE ROLE role_name ? 在对象资源管理器中设置数据库角色

? 在 SQL Server Management Studio 中,打开对象资源管理器并展开要在其中

创建新登录名的服务器实例的文件夹。 ? 依次展开数据库,某个具体数据库,“用户” ? 选中某用户,右击“属性”,在展开的数据库用户属性对话框中进行设置 ? 通过 Transact-SQL设置数据库角色

? 通过加入数据库角色,赋予数据库用户“dba”权限: exec sp_addrolemember

'db_owner', 'dba'

? 此时,dba 就可以全权管理数据库 mydb 中的对象了。

? 如果想让 SQL Server 登陆帐户“dba”访问多个数据库,比如 mydb2。可以

让 sa 执行下面的语句:

? use mydb2 go create user dba for login dba with default_schema=dbo go exec

sp_addrolemember 'db_owner', 'dba' go

? 此时,dba 就可以有两个数据库 mydb, mydb2 的管理权限了!

? ? ? ?

5.设置管理对象的权限

? 在对象资源管理器中授权:

? 选中需要授权的登录名、用户名或角色名 ? 右键单击选择“属性”,在弹出的该对象的属性窗口中选择“安全对象”,进

行权限分配

? 通过 Transact-SQL分配权限:通过GRANT和REVOKE语句

四、实验任务

1、创建角色ProgramerRole,拥有创建表,存储过程,视图权限,拥有对Salary表的查询、修改、插入权限

2、创建一个登录账号Testlogin

3、创建对应于这个登录账号的数据库用户TestUser 4、将用户TestUser添加到TestRole角色中

五、实验报告要求

1、写出与上述任务相对应的SQL语句

2、思考数据库服务器上的角色有哪些?权限类型有哪些? 3、并记录在实验过程中遇到的问题、解决办法及心得体会。


数据库实验指导—SQL - Server - 2008(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:工程力学与建筑结构在线作业答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: