当前位置:文档之家› 大型数据库技术大作业要求

大型数据库技术大作业要求

2014-2015学年第2学期《大型数据库技术》考查报告要求:1、考试要求中独立完成,并提交相应得报告.2、报告封面注意课题名称、班级、学号、姓名3、报告必须符合附件中得提纲内容要求。

4、报告必须打印装订。

5、必须独立完成,抄袭者成绩记为零分。

请结合软件工程及大型数据库技术得相关知识,选择一个数据库应用系统得课题,完成课题得设计与开发,并撰写相应得报告。

具体要求如下:(一)ORACLE11g得安装与配置(20分)在自己得电脑上配置安装ORACLE 11g,并创建数据库.具体要求如下:(1)安装版本为企业版(2)在安装时, 只安装Oralce服务器。

在安装完成后再创建数据库.(3)利用DBCA创建数据库,数据库名称为自己姓名得拼音首字母,如某学生得姓名为“张三",则数据库得名称则为zs。

(4)数据库为共享数据库。

(5)创建数据库时选择示例模式。

(6)数据库所有得用户使用相同得口令,口令为学生得学号。

将上述安装过程截屏并将图片及相关文字描述添加在文档中。

数据库名称不正确者不得分.(二)用户得创建与权限管理(20分)(1)新建一个用户表空间MYTBS,要求大小为500M.MYTBS表空间下有两个数据文件MYTBS1、DBF与MyTBS2、DBF,文件分别放在E与F两个不同得磁盘分区。

(2)创建用户配置文件userprofile,要求密码得生存周期为30天,允许输入错误得密码不得超过5次,超过5次密码锁2天.(用语句查瞧该配置文件中得资源配置结果,dba_profiles数据字典表,截图语句及查询结果)(3)新建一个用户,用户名称为学生姓名得首字母,密码为学生得学号.如学生姓名为“张三”,则用户名称则为zs。

为新帐号设置默认表空间为MYTBS。

系统所有对象必须建立在该帐号下,所有对象必须存储在MYTBS表空间中。

用户得配置文件为userprofile;(用语句查瞧新建得用户默认表空间,dba_users数据字典表,截图语句及查询结果)(4)为用户赋予登录Oracle得权限;为用户赋予创建任何表、创建任何索引得权限;将DBA得角色给新建用户;查瞧对应得用户获得得权限与角色(用数据字典表user_sys_privs,user_tab_privs,user_role_等,,截图语句及查询结果)(5)用新建得帐号登录。

并执行show user命令,显示当前登录用户。

完成以上命令,并写入文档中。

(三)Oracle对象得创建与管理(20分)选择一个熟悉得课题,并对课题进行需求分析,依据需求分析,完成数据库得设计。

确定系统所有得数据表。

依据系统设计,在Oracle11g环境下完成数据表及相关对象得创建。

(1)课题简述对课题进行简述,主要描述系统实现得功能。

员工医疗保险系统,其功能就是企业对员工得信息以及医疗信息得记录,可以实现增,删,改,查功能,以及对消费记录得统计,包括消费金额,消费时间,消费地点,还有进行医保卡得充值与消费,实现员工医疗信息得全面得管理.(2)设计出系统得表结构,至少4个表。

表名必须就是以当前用户名开头。

如当前用户就是“zs",创建了一个学生表,则表名为zs_student。

(3)使用新建得用户登录,并在用户下创建系统所需得各种表.完成各表得定义,并实现每个表得主键、外键、自定义约束,写出创建语句。

用SQL语句完成对象得创建。

每个对象得创建必须有完整得SQL语句。

(4)创建适当得索引,写出创建得代码。

根据应用需要创建视图至少3个。

(四)PL/SQL编程(20分)系统功能必须通过函数、存储过程、触发器或包实现。

至少创建一个函数、一个触发器(实现级联更新功能)、2个过程。

不能用程序设计语言实现.先描述功能,再写实现代码.例如:用户登录验证,可以创建一个存储过程,输入参数就是用户帐号、用户密码,输出参数就是整型值。

-1表示登录失败,0表示没有此用户,1表示登录成功。

系统所有得业务逻辑必须通过上述方式实现,否则答辩无效。

create user fslidentifiedby 1315925122accountunlock;grantcreatesession,create table,create view,create any procedure,createrole,createsequence with adminoption;连接fsl用户,然后建立四张表(关于学生管理系统得表)建立studentInfo表并插入数据create table studentInfo(stuID char(10) primary key,stuNamechar(20) not null,sex char(8)not null,spec char(20)not null,classchar(20)not null,birthday char(20)not null,address char(50));insert intostudentInfovalues(201301,'李力',’男’,'计算机系’,’软件设计一班’,'1994-3—10','jhhfsuihfiufh');insert into studentInfo values(201302,'王雪’,'女','计算机系','软件设计二班’,'1994—4-8’,'sfssfss’);insertinto studentInfovalues(201303,'李冰’,'男’,’计算机系’,'数据库一班','1994—5—6','dfsds');insert intostudentInfo values(201304,'张丽','女',’计算机系’,’数据库二班','1994-8—9’,’jhhdfsdfh');insert into studentInfo values(201305,’赵水’,'男','计算机系','数据库三班',’1994—10-10','zcshsj');建立courses表create table Courses(courIDchar(10) primary key,courName char(15) not null,creditHournumber(2,0) notnull,creditScorenumber(3,1)notnullﻩ);insert intocourses values(1201,'数据库一班',26,2、0);insertintocourses values(1202,'软件设计一班',32,2、5);insertinto courses values(1203,’数据库二班',26,2、0);insert intocourses values(1204,’软件设计二班’,32,3、0);insert into courses values(1205,’数据库计三班',26,2、0);建立scorescreate table scores(stuID char(10),stuName char(20)notnull,class char(20) not null,courIDchar(10),usualScorenumber(3,1) not null,testScore number(3,1)not null,constraintscores_stuID foreign key(stuID)references studentInfo (stuID),constraint scores_courseID foreign key(courID)references courses(courID));insert into scores values(201301,'李力’,'软件设计一班',1202,90、0,95、0);insert into scores values(201302,'王雪','软件设计二班’,1204,95、0,96、0);insert into scores values(201303,'李冰’,'数据库一班',1201,80、0,90、0);insertinto scoresvalues(201304,’张丽’,'数据库二班',1203,85、0,90、0);insert into scores values(201305,’赵水',’数据库计三班’,1205,60、0,95、0);建立users表create table users(userName char(10) notnull,password char(10)not null,usertype char(10));insert intousers values(’fan’,1315925122 ,'学生');insert intousersvalues('shao’,131 ,'管理员’);insert into users values('lin',131592,'教师’);创建一个陆得存储过程,判断登陆用户得权限,包括学生、教师、系统管理员。

create or replace procedure login(p_name inusers、userName%type,p_passwordin users、password%type)Asv_passwordusers、password%type;/*判别输入得密码就是否正确*/ v_usertype users、usertype%type; /*判别该用户得管理等级*/beginselect password,usertypeinto v_password,v_usertype fromusers whereuserName=p_name;/*核对用户就是否存在*/beginifv_password=p_passwordthen/*验证密码*/beginifv_usertype='学生' then dbms_output、put_line(’学生'||p_name||'登陆成功');elsif v_usertype='教师’thendbms_output、put_line(’教师’||p_name||’登陆成功');elsif v_usertype='系统管理员' then dbms_output、put_line('系统管理员'||p_name||'登陆成功');endif;end;elsedbms_output、put_line('密码输入错误,该用户登录失败');endif;end;exceptionwhenno_data_found thendbms_output、put_line(’该用户不存在!’);endlogin;/setserveroutputondeclarebeginlogin(’fan’,’1315925122'); end;/set serveroutputondeclarebeginlogin('shao’,’131’);end;/(五)Oracle备份与导出(20分)利用备份与还原得有关知识。

相关主题