数据库和表数据库表的基本操作和表级约束约束条件-实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据库系统概论》实验报告
题目:实验一 数据库和表数据库
/表的基本操
作和表级约束约束条件
姓名 班级 学号 日期
2010.9.29
一. 实验内容和步骤结果
1.在Student 数据库中,利用图形用户界面,创建一个选修了数据库课程并且是1986年出生的学生的视图,视图中包括学号,性别,成绩这三个信息:
2.用两种不同的SQL 语句创建课本128页第11题中要求的视图(视图名:V_SPJ ) 方法一:
CREATE VIEW V_SPJ AS
SELECT SNO ,PNO ,QTY FROM SPJ WHERE JNO in( SELECT JNO FROM J 表
WHERE JNAME ='三建')
方法二:
CREATE VIEW V_SPJ
AS
SELECT SNO,PNO,QTY
FROM SPJ,J表
WHERE SPJ.JNO=J表.JNO AND
JNAME='三建'
3.用SQL语句完成课本128页第11题中对视图V_SPJ的查询(1)
SELECT PNO,QTY
FROM V_SPJ
(2)
SELECT PNO,QTY FROM V_SPJ
WHERE SNO='S1'
4.用T-SQL语句操作视图的数据。(15分,每题5分)
(1) 给视图V_SPJ中增加一条数据(基本表中有插入的数据即可)。
INSERT
INTO V_SPJ
VALUES('S0','P0','100')
(2)修改视图V_SPJ中的任意一条数据的供应数量。UPDATE V_SPJ
SET QTY=10
WHERE SNO='S1'AND
PNO='P1'
(3)删除视图V_SPJ中的任意一条数据。DELETE
FROM V_SPJ
WHERE SNO='S1';
5.在图形用户界面中创建新登录名以及用户。(20分,每题10分)
(1)对于数据库company创建P148页第 8题中所需要用到的各个用户以及相关的关的登录名。(假定有数据库company,库中有两个表e(职工表)和d(部门
表))。
具体步骤:
在安全性目录下选择登录名,右键单击新建,输入登录名和登录密码,并在用户映射出选择company。
运行结果:
(2)用图形用户界面完成以下的权限勇赋予:
a)用户王明对两个表有Select和Insert的权力。
具体步骤:
右键单击王明,选择属性,选择安全对象,添加对象,特定对象。复选框选择表,确定。表对象选择:e和d。在授予下的复选框选择Select和 Insert。
运行结果:
b)用户李勇对职工表具有Select权力,对工资字段具有更新权力:
具体步骤:
确定Select权利和上题一样。而对工资字段具有更新权力,单击Update,点列权限,选择“工资”。
运行结果:
6.用T-SQL语句授权和收回权限并加以验证。(50分,每题5分)
(1)P148页 8题。(除过(a),(e))
(b) SQL源码:
GRANT INSERT,DELETE
ON e
TO李勇
GRANT INSERT,DELETE
ON d
TO李勇
运行结果:
(c)SQL源码:CREATE VIEW E_SELECT
AS SELECT*
FROM e
WHERE e.姓名=CURRENT_USER GO
GRANT SELECT
ON E_SELECT
TO PUBLIC
运行结果:
(d)SQL源码:GRANT SELECT,UPDATE(工资) ON e
TO刘星
运行结果:
(f) SQL源码:GRANT ALL PRIVILEGES
ON e
TO周平
WITH GRANT OPTION
GRANT ALL PRIVILEGES
ON d
TO周平
WITH GRANT OPTION
运行结果:
(g)SQL源码:
CREATE VIEW X_PAY
AS
SELECT e.部门号,MAX(工资)最大工资,MIN(工资)最小工资,AVG(工资)平均工资FROM e,d
WHERE e.部门号=d.部门号
GROUP BY e.部门号
GO
GRANT SELECT
ON X_PAY
TO杨兰;
运行结果:
(2)P148页 9题的c),d),f),g):
(c) SQL源码:
REVOKE SELECT
ON E_SELECT
FROM PUBLIC;
DROP VIEW E_SELECT;
运行结果:
(d)SQL源码:
REVOKE SELECT,UPDATE
ON e
FROM刘星
运行结果:
(f)SQL源码:REVOKE ALL PRIVILEGES ON e
FROM周平
REVOKE ALL PRIVILEGES ON d
FROM周平
运行结果:
(g)SQL源码:REVOKE SELECT
ON X_PAY
FROM杨兰;
DROP VIEW X_PAY;
运行结果: