第一篇:数据库原理上机实验报告
广西科技大学理学院《数据库原理》上机实验报告
实验序号与实验名称:实验九:用户管理和权限管理
姓名:薛亚妮学号:201000901045
专业班级:信计101实验日期:202_年 12月15日
一、实验目的:理解和体会数据库安全性的内容,加强对DBMS功能的认识。
二、实验内容:数据库的用户管理和操作权限管理。
三、程序源代码:
1、对象操作授权
sp_grantdbaccess 201000901035
grant select on 产品1045 to 201000901035
grant create view,create table to 201000901035
grant execute on sp_getgoods to 2010009010352、在授权过程中体会GRANT命令中WITH GRANT OPTION 短语的作用。
--用户201000901045--
grant select on产品1045 to [201000901035] WITH GRANT OPTION
--用户201000901035--
grant select on 产品1045 to [201000901035]
As [201000901035]
3、分情况收回授权,并体会REVOKE命令中GRANT OPTION FOR和CASCADE
--短语的作用
revoke select on 产品1045 from 201000901035
revoke create view,create table to 201000901035
revoke grant option for select on 产品1045 from 201000901035 CASCADE
四、实验结果分析与总结
安全性控制是数据库管理员(或系统管理员)的一个重要任务,他要充分利用数据库管理系统的安全功能,保证数据库和数据库中数据的安全。
授权登录用户为当前数据库用户 :
sp_grantdbaccess [@loginame =] login
[,[@name_in_db =] name_in_db]
使一个登录用户成为数据库用户只是授权的第一步,数据库管理员可以进一步为能够连接到自己所管理数据库的用户在该数据库上授予所需要的权限.收回权限:收回语句授权 :REVOKE { ALL | statement_list } FROM name_list
收回对象授权 :
REVOKE [GRANT OPTION FOR]
{ ALL [ PRIVILEGES ] | permission_list }
{[(column_list)] ON { table | view } | ON { table | view } [(column_list)]
| ON stored_procedure| ON user_defined_function }
FROM name_list
[ CASCADE ]
[ AS { group | role } ]
禁止语句权限: DENY { ALL | statement_list } TO name_list
禁止对象权限: DENY { ALL [ PRIVILEGES ] | permission_list }
{[(column_list)] ON { table | view } | ON { table | view } [(column_list)]
| ON stored_procedure| ON user_defined_function }
TO name_list
[CASCADE]
第二篇:数据库上机实验报告
兰州理工大学
学生上机报告
学院计算机与通信学院课程名称数据库原理
学生姓名侯予南学号05550204
专业班级基地班05级1班
上机日期202_年4月17日
指导教师李明
上机实验报告
(一)实验内容:
1、熟悉SQL Server 202_应用环境;
熟悉查询分析器的使用方法;
2、运行课堂示例:建立表Teacher , Course ;
进行数据插入、查询、更新、建立视图、创建触发器等操作;
3、完成作业(P108 第5题,P145第5题);
4、完成实验报告。
实验环境:
数据库系统:SQL Server 202_
实验过程:
在实验中发现的问题:
小结:
教师评语:
成绩:
第三篇:数据库课程上机实验报告模版
《数据库原理与设计》实验报告(实验名称 :)
专业班级学号学生姓名任课教师朱焱老师辅导教师杨方蓉、梁懿
年月日
一、实验目的本次实验所涉及并要求掌握的知识点。根据老师实验前的讲授自行撰写。(小四号字,宋体)
二、实验环境
本次实验所使用的系统平台和相关软件。(小四号字,宋体)
三、实验内容:
本次实验的内容描述及相关题目
四、程序源码与运行结果
按照实验内容编写的代码与结果显示(五号字,宋体),重复的SQL语句只写一次。
五、实验总结
(小四号字,宋体).实验中遇到的问题、原因分析及解决方法.实验体会和收获。
第四篇:数据库上机实验报告
数据库上机实验报告
试验内容
1、数据表的建立
基本表《简单的》带有主键
带有外码约束的(外码来自其他表或者本表)
2、数据表的修改
添加删除列
修改列属性类型
添加删除约束(约束名)
元组的添加,修改,删除
删除数据表
试验过程
1、createtablestudent
(snochar(9)primarykey,/*sno是主码列级完整性约束条件*/
snamechar(20)unique,/*sname取唯一值*/
ssexchar(2),sagesmallint,/*类型为smallint*/
sdeptchar(20)/*所在系*/);
createtablecourse
(cnochar(4)primarykey,/*列级完整性约束条件,cno是主码*/
cnamechar(40),cpnochar(4),/*cpno的含义是先行课*/
ccreditsmallint,foreignkey(cpno)referencescourse(cno)
/*表级完整性约束条件,cpno是外码,被参照表是course,被参照列是cno*/);
createtablesc
(snochar(9),cnochar(4),gradesmallint,primarykey(sno,cno),/*主码有两个属性构成,必须作为表级完整性进行定义*/
foreignkey(sno)referencesstudent(sno),/*表级完整性约束条件,sno是外码,被参照表是student*/
foreignkey(cno)referencescourse(cno),/*表级完整性约束条件,cno是外码,被参照表示course*/);
例
1、createtables
(cnovarchar(3),/*变长的字符串,输入2个字符就是两个字符不会补空格*/
snamevarchar(20),statusint,cityvarchar(20),constraintpk_snoprimarykey(sno),/*约束条件的名字为pk_sno*/);
createtablep
(pnovarchar(3),pnamevarchar(20),colorvarchar(3),weightint,constraintpk_pnoprimarykey(pno),/*约束条件的名字是pk_pno*/);
createtablej
(jnovarchar(3),jnamevarchar(20),cityvarchar(20),constraintpk_jnoprimarykey(jno)/*约束条件的名字为pk_jno*/);
例
2、createtablespj
(snovarchar(3),/*第一个表中的主码*/
pnovarchar(3),jnovarchar(3),qtyint,/*数量*/
constraintpk_spjprimarykey(sno,pno,jno),/*主码由3个属性组成*/
foreignkey(sno)referencess(sno),/*表级完整性约束条件,sno是外码,被参照表是s*/
foreignkey(pno)referencesp(pno),/*表级完整性约束条件,pno是外码,被参照表是p*/
foreignkey(jno)referencesj(jno),/*表级完整性约束条件,jno是外码,被参照表是j*/);
2、数据表的更改
在s表中添加一个concat列
altertablesaddconcatvarchar(20)
在s表中删除concat列
altertablesdropcolumnconcat
更改s表concat列的属性把长度由20改为30
altertablesaltercolumnconcatvarchar(30)
联系方式名字为concat修改属性为唯一的属性名为con_concat
altertablesaddconstraintcon_concatunique(concat)
删除约束关系con_concat
altertablesdropconstraintcon_concat
/*插入一个元组*/
insertintosvalus(‘s1’,’精益’,20,’天津’)/*20不能写成’20’*/
试验中的问题的排除与总结:
1、在创建spj时
有三个实体所以从3个实体中取主码,还有一个数量属性也要写上
主码由那3个主码确定
2、更改一个数据库中数据表时一定要先使该数据库处于正在使用状态
3、constraint
是可选关键字,表示primarykey、notnull、unique、foreignkey或check约束定义的开始。约束是特殊属性,用于强制数据完整性并可以为表及其列创建索引。
4、--go可以不加但是要注意顺序注:go--注释提示错误
5、注意添加一个空元素用null
附sql备份
--创建一个数据库student
createdatabasestudent
go
--在数据库student中创建表studentcoursesc注意顺序
usestudent
--
createtablestudent
(snochar(9)primarykey,/*sno是主码列级完整性约束条件*/
snamechar(10)unique,/*sname取唯一值*/
ssexchar(2),sagesmallint,/*类型为smallint*/
sdeptchar(20)/*所在系*/);/*;要加*/
-----------
第五篇:数据库上机实验报告
数据库上机实验报告
试验内容
1、数据表的建立
基本表《简单的》带有主键
带有外码约束的(外码来自其他表或者本表)
2、数据表的修改
添加删除列
修改列属性类型
添加删除约束(约束名)
元组的添加,修改,删除
删除数据表
试验过程
1、create
table
student
(sno
char(9)
primary
key,/*sno是主码
列级完整性约束条件*/
sname
char(20)
unique,/*sname取唯一值*/
ssex
char(2),sage
smallint,/*类型为smallint*/
sdept
char(20)
/*所在系*/);
create
table
course
(cno
char(4)
primary
key,/*列级完整性约束条件,cno是主码*/
cname
char(40),cpno
char(4),/*cpno的含义是先行课*/
ccredit
smallint,foreign
key
(cpno)
references
course(cno)
/*表级完整性约束条件,cpno是外码,被参照表是course,被参照列是cno*/);
create
table
sc
(sno
char(9),cno
char(4),grade
smallint,primary
key
(sno,cno),/*主码有两个属性构成,必须作为表级完整性进行定义*/
foreign
key
(sno)
references
student(sno),/*表级完整性约束条件,sno是外码,被参照表是student*/
foreign
key
(cno)
references
course(cno),/*表级完整性约束条件,cno是外码,被参照表示course*/);
例
1、create
table
s
(cno
varchar(3),/*变长的字符串,输入2个字符就是两个字符不会补空格*/
sname
varchar(20),status
int,city
varchar(20),constraint
pk_sno
primary
key(sno),/*约束条件的名字为pk_sno*/);
create
table
p
(pno
varchar(3),pname
varchar(20),color
varchar(3),weight
int,constraint
pk_pno
primary
key
(pno),/*约束条件的名字是pk_pno*/);
create
table
j
(jno
varchar(3),jname
varchar(20),city
varchar(20),constraint
pk_jno
primary
key(jno)
/*约束条件的名字为pk_jno*/);
例
2、create
table
spj
(sno
varchar(3),/*第一个表中的主码*/
pno
varchar(3),jno
varchar(3),qty
int,/*数量*/
constraint
pk_spj
primary
key(sno,pno,jno),/*主码由3个属性组成*/
foreign
key(sno)
references
s(sno),/*表级完整性约束条件,sno是外码,被参照表是s*/
foreign
key(pno)
references
p(pno),/*表级完整性约束条件,pno是外码,被参照表是p*/
foreign
key(jno)
references
j(jno),