广东海洋大学数据库实验报告Word文档下载推荐.docx

上传人:b****6 文档编号:16982420 上传时间:2022-11-27 格式:DOCX 页数:23 大小:4.08MB
下载 相关 举报
广东海洋大学数据库实验报告Word文档下载推荐.docx_第1页
第1页 / 共23页
广东海洋大学数据库实验报告Word文档下载推荐.docx_第2页
第2页 / 共23页
广东海洋大学数据库实验报告Word文档下载推荐.docx_第3页
第3页 / 共23页
广东海洋大学数据库实验报告Word文档下载推荐.docx_第4页
第4页 / 共23页
广东海洋大学数据库实验报告Word文档下载推荐.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

广东海洋大学数据库实验报告Word文档下载推荐.docx

《广东海洋大学数据库实验报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《广东海洋大学数据库实验报告Word文档下载推荐.docx(23页珍藏版)》请在冰豆网上搜索。

广东海洋大学数据库实验报告Word文档下载推荐.docx

所在系

联系

char

11

Y

课程表〔KC〕

课程号

3

课程名

20

教师

开课学期

Tinyint

学时

学分

成绩表〔XS_KC〕

成绩

Smallint

⑵数据的实体完整性实验

用SSMS分别将学生情况表〔XSQK〕的学号字段、课程表〔KC〕的课程号字段设置为主健

②用T-SQL语句将成绩表〔XS_KC〕的学号、课程号字段设置为主健

⑶数据的参照完整性实验

①用SSMS为成绩表〔XS_KC〕创立外键FK_XSQK_ID,外键FK_XSQK_ID参照学生情况表〔XSQK〕表的学号

②用T-SQL语句成绩表〔XS_KC〕创立外键FK_KC_ID,外键FK_KC_ID参照课程表〔KC〕

表的课程号

⑷数据的用户定义完整性实验

用T-SQL语句为学生情况表〔XSQK〕的XX列创立一个唯一约束

②用SSMS为学生情况表〔XSQK〕的性别列创立一个检查约束,使得性别的值为男或女

③用T-SQL语句为成绩表〔XS_KC〕的成绩列创立一个检查约束,使得成绩的值在〔0~100〕之间

④用SSMS语句课程表〔KC〕的学时列创立一个缺省约束,缺省值为60

⑤用T-SQL语句课程表〔KC〕的学分列创立一个缺省约束,缺省值为2

2.将如下数据分别转换成文本数据或Excel的格式,并分别将其导入数据库的各个表中:

专业

020211

杨颖

1980-7-20

计算机应用

计算机

88297147

020212

方露露

1981-1-15

020213

俞奇军

1980-2-20

信息管理

88297151

020214

胡国强

1980-11-7

020215

薛冰

1980-7-29

水利工程

水利系

88297152

秦盈飞

1981-3-10

电子商务

经济系

88297161

董含静

1980-9-25

88297062

陈伟

1980-8-7

88297171

陈新江

房建

学生情况表〔XSQK〕:

课程表〔KC〕:

101

计算机原理

陈红

45

102

计算方法

王颐

103

操作系统

徐格

60

4

104

数据库原理及应用

应对刚

75

5

105

网络根底

吴江江

106

高等数学

孙中文

90

107

英语

陈刚

108

VB程序设计

赵红韦

70

成绩表〔XS_KC〕:

85

87

88

58

63

76

55

80

57

71

3.理解默认值的概念和作用

①用语句创立名为Xi_default,值为“计算机系〞的默认值

②将默认值Xi_default绑定到学生表中的所在系的属性列上

③解除学生表所在系的属性列上的默认值

④删除默认值Xi_default

注:

创立默认值的格式:

createdefault默认值名 as ‘默认值’

默认值绑定的格式:

sp_bindefault默认值名,<

’表名.列名’︱自定义数据类型名称>

解除默认值绑定格式:

sp_unbindefault <

删除默认值格式:

Dropdefault默认值名

4.理解规那么的概念和作用

①用语句创立规那么“rule_kkxq〞,用以限制插入该规那么所绑定的列中的值只能取1、2、3、4、5、6

②将“rule_kkxq〞规那么绑定到课程表的开课学期属性上,并执行以下语句,看看能否正

常执行,为什么:

Insertinto课程表

Values(109,'

C语言'

'

李方'

8,64,4)

不能正常执行,因为数值8不在规那么rule_kkxq所绑定的数据范围内

③假设不解除规那么,能否将规那么rule_kkxq直接删除?

不能,需先解除规那么才能删除规那么rule_ 

kkxq

创立规那么的格式:

createrule 规那么名 as @列名 约束条件

规那么绑定的格式:

sp_bindrule 规那么名,<

解除规那么绑定格式:

sp_unbindrule<

删除规那么格式:

Droprule规那么名

5.数据的平安性实验:

(1)设置身份验证模式

①写出查看当前SQLServer身份验证模式的过程,即查看当前SQLServer系统到底是采用Windows身份验证还是混合身份验证模式。

效劳器->

右键"

属性"

->

选择"

平安性"

即可查看当前SQL 

Server系统的效劳器验证模式 

②将系统设置为Windows身份验证模式,重启SQLServer,使之生效并验证

③将系统设置为混合身份验证模式,重启SQLServer,使之生效并验证

⑵创立和管理登录账户

1〕用对象资源管理器创立、查看、删除SQLServer登录账户

①分别创立两个登录XXLoginA、LoginA1,其登录密码分别为:

123456、456,并指定LoginA登录默认的数据库为学生成绩数据库(XSCJ),指定LoginA1登录默认的数据库为master数据库。

②查看登录账户LoginA、LoginA1

③删除登录账户LoginA1

2〕用T-SQL语句创立、查看、删除SQLServer登录账户

①用系统存储过程,分别创立两个登陆XXLoginB、LoginB1,其登录密码分别为:

666、888,登录后然后所连接到的数据库均为学生成绩数据库(XSCJ)。

创立新的SQLServer登录账号和登录密码的语句为:

sp_addlogin[loginame=]'

login'

//登录的名称

[,[passwd=]'

password'

]//登录密码。

[,[defdb=]'

database'

]//登录的默认数据库〔登录后登录所连接到的

数据库〕。

默认设置为master。

例:

创立一个登陆XXLogin,登录密码为:

A,登录后然后所连接到的数据库

为master数据库。

sp_addlogin'

Login'

A'

master'

或sp_addloginloginame='

passwd='

defdb='

②使用系统存储过程sp_helplogins查看SQLServer登录账户

查看登录账户的格式:

execsp_helplogins

③使用系统存储过程sp_droplogin从SQLServer中将登录账户LoginB1删除

删除登录账户的格式:

sp_droplogin[loginame=]'

登录名称'

⑶创立和管理数据库用户

1〕用对象资源管理器创立、查看、删除数据库用户

①在学生成绩数据库(XSCJ)中创立数据库用户UserA,使其所对应的XX为LoginA

②能否再创立一个数据库用户ABC,使其对应登录的XX为LoginA,假设不能写出其原因?

不能,同一个数据库的数据库用户只能有一个登录账户

2〕用语句创立、查看、删除数据库用户

①用系统存储过程sp_grantdbaccess在学生成绩数据库(XSCJ)中创立一个数据库用户UserB,使其所对应的登录XX为LoginB

为SQLServer登录在当前数据库中添加一个平安用户的语句为:

sp_grantdbaccess[loginame=]'

//当前数据库中的登录账号

[,[name_in_db=]'

name_in_db'

//数据库中XX的用户名

②用系统存储过程sp_helpuser查看数据库用户

查看数据库用户的格式:

sp_helpuser[[name_in_db=]'

security_account'

]

③用系统存储过程sp_revokedbaccess删除数据库用户ABC1

删除数据库用户的格式:

sp_revokedbaccess[name_in_db=]'

name'

⑷创立和管理角色

1〕效劳器角色的管理

①用对象资源管理器将登录XXLoginA加到sysadmin的角色中。

②用系统存储过程sp_addsrvrolemember将登录XXLoginB加到sysadmin的角色中。

为登录账户指定效劳器角色的系统存储过程sp_addsrvrolemember的格式为:

sp_addsrvrolemember'

登录账号'

,效劳器角色名称

③用系统存储过程sp_dropsrvrolemember删除登录账户LoginA的效劳器角色sysadmin

删除登录账户的效劳器角色的系统存储过程sp_dropsrvrolemember的格式为:

sp_dropsrvrolemember'

2〕数据库角色的管理

①用对象资源管理器将数据库用户UserA添加到db_owner数据库的角色中

②用系统存储过程sp_addrolemember将数据库用户UserB添加到db_owner数据库角色中。

为数据库用户指定数据库角色的系统存储过程sp_addrolemember的格式为:

sp_addrolemember[rolename=]'

role'

//当前数据库角色的名称 

[membername=]security_account/*添加到角色的平安XX。

security_account可以是所有有效的SQLServer用户、SQLServer角色或是所有

已授权访问当前数据库的MicrosoftWindowsNT®

用户或组。

*/

③用系统存储过程sp_droprolemember删除数据库用户UserB的db_owner数据库角色

删除数据库用户的数据库角色的系统存储过程sp_droprolemember的格式为:

sp_droprolemember'

数据库角色名称'

,数据库用户账户

3〕用户自定义角色的管理

①在学生成绩数据库(XSCJ)中创立一个角色RoleB

注:

在当前数据库创立新的角色:

sp_addrole[rolename=]'

//新角色的名称

[,[ownername=]'

owner'

]/*新角色的所有者,owner默认值为

dbo。

owner必须是当前数据库中的某个用户或角色*/

②将用户UserB参加到自定义的RoleB这个角色中

将数据库户添加到自定义数据库角色的格式为:

③将学生成绩数据库(XSCJ)中学生表的Select权限授予RoleB

④用XXLoginB身份登陆,并学生成绩数据库(XSCJ)中执行

CreateTableTest(aavarchar(10))

Select*from学生情况表

Select*from成绩表

并查看以上各语句能否正常执行,为什么?

如何才能使不能执行的语句执行?

如果用XXLoginA登陆,上面的语句能否执行。

不行,因为UserB没有Create 

Table权限

GRANT 

CREATE 

TABLE 

TO 

UserB

可以

⑤从角色RoleB中去除用户UserB

⑥从学生成绩数据库(XSCJ)中删除用户UserB

⑦从学生成绩数据库(XSCJ)中删除角色RoleB

⑧从SQLServer中删除登陆XXLoginB

在删除登录XX之前,应先将登录XX所对应的用户XX全部删除,不然将无法删除登录XX。

⑸权限的授予与回收

1〕权限的授予

①把查询XSQK表的权限授予用户UserA

②把对KC表全部操作权限授予用户UserA

③把对XS_KC表的查询权限授予所有用户

④把删除XSQK表和修改学生学号的权限授予用户UserA

⑤把插入XSQK表的权限授予用户UserA,并允许将此权限再授予其它用户

⑥把在学生成绩数据库(XSCJ)中建立表的权限授予用户UserA

2〕权限的回收

①撤销用户UserA修改学号的权限

②撤销所有用户对XS_KC表的查询权限

③撤销用户UserA对XSQK表的插入权限

四、实训思考题

1.一个用户要访问数据库须要经过哪几个平安认证阶段?

2.简述登录账户和用户账户间区别与联系

3.用户、角色和权限的职能,以及它们之间的关系

4.效劳器角色有哪些,并分别简述其功能?

用户可以创立效劳器角色吗?

5.数据库角色有哪些,并分别简述其功能?

用户可以创立数据库角色吗?

6、什么是数据库的平安性,可以通过哪些措施来保证数据库的平安性?

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

当前位置:首页 > 初中教育 > 政史地

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1