1、Oracle Database 实验报告实验一 Oracle Database环境和SQL *Plus基础一、 实验目的掌握Oracle Database数据库的安装,学会使用SQL *Plus环境的设置及应用。二、 实验环境本实验采用的RDBMS是Oracle公司的数据库管理系统,以Oracle Database 11g版本为软件平台。三、 实验内容与要求1 熟悉Oracle Database软件的获取和安装,简要说明Oracle Database 11g的安装过程。2 启动和设置SQL *Plus环境,通过SQL *Plus环境执行SQL语句。(1)打开SQL *Plus环境,登录Orac
2、le数据库,以系统默认用户身份登录,用户名:system, 口令:Admin123。登录成功后出现:“SQL”提示符。(2)以学生姓名拼音建立新的Oracle数据库用户(姓全拼,名字的首字母),并给用户授予连接和管理员权限。参考代码:create user wangw identified by wangw; (前一个为用户名,后一个为口令)grant create session,dba to wangw; (session为连接权限,dba是具有100多个权限的角色)3. 以当前新定义用户登录后创建学生表,表名:S,表格式如下:字段名称数据类型是否为主码是否为空中文含义snoVarchar
3、2(8)*Not null学号snameVarchar2(8)null学生姓名sexVarchar2(2)null公司名birthdaydatenull地址deptnoVarchar2(24)null所在系部编号使用describe命令查看所定义的表结构。4. 使用insert语句向S表中插入至少10条数据。参考代码:INSERT INTO EMP(EMPNO,ENAME,HIREDATE)VALUES(7844,TURNER,to_date(8-9-1981,dd-mm-yyyy);5. 查询:(1)查询所有学生信息的信息;(2)格式化查询结果:改变deptno列的显示宽度为A10,将所有列
4、标题设置成相应的中文含义。6.打开并配置四、 实验预习和准备参考相关书籍,能够熟练地使用SQL语言。五、 实验过程与结果1、下载Oracle Database 10g的安装包,开启系统响应服务,进行相关设置。2、create user hzx identified by hzx;(第一个hzx为用户名,第二个hzx为密码) Grant create session dba to hzx;(授予hzx以数据库管理员的权限)。3、创建表的脚本:CREATE TABLE S ( SNO VARCHAR2(8 CHAR), SNAME VARCHAR2(8 CHAR), BIRTHDAY DATE,
5、SEX VARCHAR2(2 CHAR), DEPTNO VARCHAR2(8 CHAR) ;4、插入数据的脚本:REM INSERTING into SInsert into S (SNO,SNAME,BIRTHDAY,SEX,DEPTNO) values (1,李明,to_timestamp(01-9月 -90 12.00.00.000000000 上午,DD-MON-RR HH.MI.SS.FF AM),男 ,1);Insert into S (SNO,SNAME,BIRTHDAY,SEX,DEPTNO) values (2,张兰,to_timestamp(12-9月 -91 12.00
6、.00.000000000 上午,DD-MON-RR HH.MI.SS.FF AM),女 ,1);Insert into S (SNO,SNAME,BIRTHDAY,SEX,DEPTNO) values (3,王刚,to_timestamp(01-7月 -95 12.00.00.000000000 上午,DD-MON-RR HH.MI.SS.FF AM),男 ,2);Insert into S (SNO,SNAME,BIRTHDAY,SEX,DEPTNO) values (4,李刚,to_timestamp(01-6月 -94 12.00.00.000000000 上午,DD-MON-RR H
7、H.MI.SS.FF AM),男 ,2);Insert into S (SNO,SNAME,BIRTHDAY,SEX,DEPTNO) values (5,王丽,to_timestamp(01-3月 -92 12.00.00.000000000 上午,DD-MON-RR HH.MI.SS.FF AM),女 ,3);Insert into S (SNO,SNAME,BIRTHDAY,SEX,DEPTNO) values (6,张小江,to_timestamp(01-3月 -93 12.00.00.000000000 上午,DD-MON-RR HH.MI.SS.FF AM),男,3);5、(1)SE
8、LECT * FROM S; (2)colum deptno heading所在系部编号format A10 colum sno heading 学号 colum sname heading 学生姓名 colum sex heading 公司名 colum birthday heading 地址六、 实验小结和体会通过本次实验,我掌握了Oracle Database 10g数据库的安装,熟悉了Oracle Database 10g软件的获取和安装,学会了使用SQL *Plus环境的设置及应用。按照实验内容按部就班,就可以轻松的完成实验的内容,结合在数据库系统概论中学习的基础知识,与数据库的相似
9、与不同之处进行比较,能更加透彻地理解不同版本数据库间思想的同源性和系统相似性。实验二 管理数据库表及其完整性一、实验目的掌握Oracle中数据库和表以及数据类型的创建,同时能够熟练地进行表及表间数据完整性约束的创建。二、实验环境本实验采用的RDBMS是Oracle公司的数据库管理系统,以Oracle Database 11g版本为软件平台。三、实验内容与要求1. 在SQL *Plus或SQL Developer环境中建立如下结构表:(1)C表字段名称数据类型是否为主码是否为空中文含义cnoVarchar2(8)*Not null课程号cnameVarchar2(16)null课程名credit
10、NUMBER(3,1)null学分(2)SC表字段名称数据类型是否为主码是否为空中文含义snoVarchar2(8)*Not null学号cnoVarchar2(8)*Not null课程号gradeNUMBER(5,1)null成绩(3)Dept表字段名称数据类型是否为主码是否为空中文含义deptnoVarchar2(8)*Not null系部编号deptnameVarchar2(16)null系部名称 示例:创建表CREATE TABLE EMP (EMPNO NUMBER(4) CONSTRAINT PK_EMP PRIMARY KEY, ENAME VARCHAR2(10), JOB
11、VARCHAR2(9), MGR NUMBER(4) , HIREDATE DATE, SAL NUMBER(7,2), COMM NUMBER(7,2), DEPTNO NUMBER(2) CONSTRAINT FK_DEPTNO REFERENCES DEPT);2. 创建约束:同时添加相应的主键约束、外键约束,并给C表中的credit字段添加check约束(0credit10),给sc表中的grade添加默认值(default为0),并验证。若要创建外键约束可参阅如下代码: ALTER TABLE SC ADD CONSTRAINT SC_C_FK1 FOREIGN KEY (CNO)
12、REFERENCES C (CNO) ENABLE;检查约束可参考如下代码: ALTER TABLE S ADD CONSTRAINT S_C_FK1 Check ( sex in(男,女) );默认值约束可参考如下代码: ALTER TABLE S MODIFY (SEX CHAR(2 CHAR) DEFAULT 男);四、实验预习和准备完成本次实验首先要熟悉SQL语句如何创建数据库表,同时还要熟悉如何使用Alter语句创建主、外键,创建默认值、规则等。五、实验过程与结果1、在SQL *Plus或SQL Developer环境中建立结构表:创建学生表CCREATE TABLE C(CNO V
13、archar2(8) CONSTRAINT PK_EMP PRIMARY KEY, CNAME VARCHAR2(16), CREDIT NUMBER(3,1),Check ( CREDIT in(0-10) ););创建学生选课表SCCREATE TABLE SC(SNO Varchar2(8) CONSTRAINT PK_EMP PRIMARY KEY,CNO Varchar2(8) CONSTRAINT PK_EMP PRIMARY KEY, GRADE NUMBER(5,1)FOREIGN KEY (CNO) REFERENCES C (CNO) ENABLE;ALTER TABLE
14、SC MODIFY (GRADE CHAR(2 CHAR) DEFAULT 0););创建系部表DeptCREATE TABLE DEPT(DEPTNO Varchar2(8) CONSTRAINT PK_EMP PRIMARY KEY,DEPTNAME Varchar2(16) );2、创建约束:同时添加相应的主键约束、外键约束,并给C表中的credit字段添加check约束(0credit10),给sc表中的grade添加默认值(default为0),并验证。ALTER TABLE “S” MODIFY(“SNO” NOT NULL ENABLE);ALTER TABLE “S” ADD CONSTRAINT “S_PK” PRIMARY KEY(“SNO”) ENABLE;ALTER TABLE “C” ADD CONSTRAINT “C_PK” PRIMARY KEY(“CNO”) ENABLE;ALTER TABLE “C” MODIFY(“CNO” NOT NULL ENABLE);ALTER TABLE “DEPT” ADD CONSTRAINT “DEPT_PK” PRIMAR
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1