ImageVerifierCode 换一换
格式:DOC , 页数:65 ,大小:228.54KB ,
资源ID:3370568      下载积分:14 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/3370568.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(oracle实验指导书之全本.doc)为本站上传会员【快乐****生活】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

oracle实验指导书之全本.doc

1、 Oracle数据库 实验指导 段华斌 编著 计算机与通信工程系 实验一 实验名称:数据库的管理 实验学时:2 实验目的: 1)了解Oracle数据库的逻辑结构和物理结构。 2)熟悉Oracle的命令操作环境SQL*PLUS。 3)了解启动和关闭数据库的不同方式及其优缺陷。 4)熟悉掌握各种启动、关闭方式。 实验内容及环节: 1、 SQL*Plus的启动与关闭 (一)SQL*Plus的启动 当登录到操作系统后,有三种方法启动SQL*Plus。 方法一: (1) 执行“开始”→“程序”→“Oracle –

2、 OraDb11g_home1”→“应用程序开发”→“SQL Plus”命令,打开SQL Plus窗口,显示登录界面。 (2) 在登录界面中将提醒输入用户名,根据提醒输入相应的用户名和口令(例如system和admin)后按Enter键,SQL*Plus将连接到默认数据库。 (3) 连接到数据库之后,显示SQL>提醒符,可以输入相应的SQL命令。 方法二: (1) 执行“开始”→“程序”→“附件”→“命令提醒符”,打开命令提醒符窗口。 (2) 输入命令:Sqlplus / nolog Connect sys/口令 a

3、s sysdba 方法三: (1) 执行“开始”→“程序”→“附件”→“命令提醒符”,打开命令提醒符窗口。 (2) 输入命令:sqlplus 用户名/口令 as sysdba。 (二)断开与数据库的连接 SQL>DISCONNECT (三)退出SQL*Plus SQL>EXIT 或: SQL>Quit (四)启动sqlplus,也许的故障ORA-12560 导致ORA-12560: TNS: 协议适配器错误的问题的因素有三个: (1)监听服务没有起起来。windows平台个一如下操作:开始---程序---管理工具---服务,打开服务

4、面板,启动TNSlistener服务。 (2)database instance没有起起来。windows平台如下操作:开始---程序---管理工具---服务,打开服务面板,启动oracleserviceXXXX,XXXX就是你的database SID. (3)进入sqlplus前,在command line下输入 set oracle_sid=XXXX,XXXX就是你的database SID。 2、 使用shutdown命令关闭数据库 练习使用shutdown命令关闭数据库实例,分别按以下方式启动数据库实例。 (1)正常关闭。等待当前所有已连接的用户断开与

5、数据库的连接,然后关闭数据库。正常关闭的语句如下: SHUTDOWN NORMAL (2)立即关闭。回退活动事务解决并断开所有已连接的用户,然后关闭数据库。 立即关闭语句如下: SHUTDOWN IMMEDIATE (3)事务关闭:完毕事务解决后断开所有已连接的用户,然后关闭数据库。事务解决关闭语句如下: SHUTDOWN TRANSACTIONAL (4)中止关闭:中止数据库实例, 立即关闭数据库。中止关闭的语句如下: SHUTDOWN ABORT 3、 使用startup命令启动数据库 练习使用STA

6、RTUP命令启动数据库实例,分别按以下方式启动数据库实例。 (1)启动数据库实例时不装载数据库。执行此操作的命令如下: STARTUP NOMOUNT (2)启动数据库实例,装载数据库,但不打开数据库。通常在数据库维护时执行此操作,相应的命令如下: STARTUP MOUNT (3)启动后限制对数据库实例的访问。执行此操作的命令如下: STARTUP RESTRICT (4)强制实例启动。在碰到特殊异常的情况时,可以强制启动实例。强制启动实例的语句如下: STARTUP FORCE 4.改变数据库的状态 (1)装载数据库实例。

7、 在执行某些管理操作时,数据库必须启动、装载一个实例,但此时数据库处在关闭状态。 ALTER DATABASE MOUNT (2)打开已关闭的数据库。 ALTER DATABASE OPEN (3)以只读方式打开数据库。 ALTER DATABASE OPEN READ ONLY 思考题: 1、在数据库的nomount、mount、open三种模式下,分别打开数据库的什么文献? 2、当关闭数据库时使用shutdown命令,好久没有关闭,随即将“命令提醒符”窗口关闭,之后重新“启动命令提醒符”并登录SQL*PLUS,使用shutdown immedi

8、ate关闭数据库出现如下问题如何解决? ORA-24324: 未初始化服务句柄 ORA-24323: 不允许此值 ORA-01090: 正在关闭 - 不允许连接 3、如何把数据库从nomount状态改为mount状态? 实验二 实验名称:日记文献的管理 实验学时:2 实验目的: 1)了解日记文献的作用。 2)了解管理重做日记文献的准则。 3)掌握重做日记文献组及成员的添加、清除、删除等操作方法。 实验内容及环节: 重做日记文献对于Oracle数据库来说是至关重要的,Oracle数据库的变化,都会生成相应的重做日记,这些日记被记录在重

9、做日记文献中。 1、 重做日记文献的查看 (1)查看数据库各组联机重做日记文献的日记序列号: SQL>ARCHIVE LOG LIST; SQL>SELECT GROUP#,SEQUENCE# FROM V$LOG; (2)查看日记文献组的状态: SQL>SELECT GROUP#,STATUS FROM V$LOG; (3)查看重做日记组及其成员的基本信息: SQL>SELECT GROUP#,STATUS,MEMBER FROM V$LOGFILE; 2、 添加重做日记文献组 SQL>ALTER DATABASE ADD LOGFILE 2 GROUP 4

10、'E:\REDO04_1.LOG') 3 SIZE 10M; 3、 添加重做日记文献组的成员 方法一: SQL>ALTER DATABASE ADD LOGFILE MEMBER 2 'E:\REDO04_2.LOG' 3 TO GROUP 4; 方法二:假如不知道组编号,可以通过下述操作向组中其他成员的名称来添加新的成员: SQL>ALTER DATABASE ADD LOGFILE MEMBER 2 'E:\REDO04_3.LOG' 3 TO 4 (‘E:\REDO04_1.log’,’ 'E:\REDO 04_2.log’); 查询

11、v$log可以看到添加完毕后的结果: SQL>SELECT GROUP#,MEMBERS,STATUS,FIRST_TIME FROM V$LOG; 4、 删除重做日记文献组成员: SQL>ALTER DATABASE DROP LOGFILE MEMBER ' E:\REDO04_3.LOG '; 5、 删除重做日记文献组: SQL>ALTER DATABASE DROP LOGFILE GROUP 4; 也许的错误信息: Ora-01623:日记10 是实例orcl的当前日记。 解决方法: SQL> alter system switch logfile;

12、 SQL> select * from v$log; 交替日记文献组,假如多次切换后想要删除的重做日记组状态依旧是active的时候可以重启动一下数据库。 6、 清除重做日记文献组: SQL>ALTER DATABASE CLEAR LOGFILE GROUP 3; 7、 改变数据库的归档模式: (1) 修改初始化参数 ,指定归档位置和归档日记文献的命名方法。 SQL> ALTER SYSTEM 2 SET LOG_ARCHIVE_DEST='D:\ORACLE\ORADATA\ARCHIVE'; SQL> ALTER SYSTEM 2 SET LOG_A

13、RCHIVE_DUPLEX_DEST='E:\ORACLE\ARCHIVE'; SQL> ALTER SYSTEM 2 SET LOG_ARCHIVE_FORMAT='%R_%T_%S.ARC' SCOPE=SPFILE; (2) 关闭数据库实例SHUTDOWN IMMEDIATE; (3) Startup mount; (4) Alter database archivelog; (5) Alter database open; 8、 强制进行日记切换,以检查日记文献能否对的归档。 SQL>ALTER SYSTEM SWITCH LOGFILE; 在资源管理器中查

14、看指定归档位置下的归档日记文献。 9、 查看数据库的当前模式: SQL>SELECT NAME,LOG_MODE FROM V$DATABASE; 10、 查看数据库的归档进程信息: SQL>SELECT * FROM V$ARCHIVE_PROCESSES; 11、 查询数据库的归档日记文献名称、重做日记序列号以及每次归档的完毕时间等。 SQL>SELECT NAME,SEQUENCE#,COMPLETION_TIME FROM V$ARCHIVED_LOG; 思考题: 1、 移动、重命名重做日记文献成员的环节如下,请完毕各环节的命令代码。 (1)关闭数据库。 (2

15、将重做日记文献E:\REDO04_3.LOG移动或复制到D盘,并重命名为REDO04_03.LOG。 (3)以MOUNT状态打开数据库。 (4)重命名数据库的重做日记文献。 (5)打开数据库。 (6)查看重做日记文献信息。 2、在实验内容中添加重做日记文献组group4时,是否可以将group4 改为group1?改为group6呢?请分别说明因素。 3、当重做日记文献组被清除后,该组还可以继续使用吗?为什么? 实验三 实验名称:角色和用户管理 实验学时:2 实验目的: 1)了解数据库用户。 2)熟悉创建、更改、删除、查看用户的方法。 3)了解数据库的不同权限。

16、 4)掌握权限的授予和回收的方法。 5)了解权限、角色的不同点以及它们之间的关系。 6)纯熟掌握对角色的管理。 实验内容及环节: 在Oracle中,只有具有一定权限的用户才干对数据库进行操作。在安装Oracle时,数据库自身会自动创建一些用户或帐户,如SYS、SYSTEM、SYSMAN、DBSNMP等,这些预定义的用户具有特殊的权限能管理数据库。用SYS用户来实现创建、更改、删除用户等操作。 1、 创建用户 CREATE USER语句在数据库中创建新用户,语法如下: CREATE USER <用户名> IDENTIFIED {BY <口令>|EXTERNALLY|GLOBAL

17、LY} [ PASSWORD EXPIRE ] [ ACCOUNT LOCK | UNLOCK ] [TEMPORARY TABLESPACE <临时表空间>]; [DEFAULT TABLESPACE <默认表空间>] [QUOTA quota [ K | M ] | UNLIMITED ON 表空间] [ PROFILE 概要文献 ] 例1:创建管理用户USERMAN。 CREATE USER USERMAN IDENTIFIED BY USERMAN; 2、 更改用户 ALTER USER语句也可以修改用户信息。 (1) 修改密码密码。 例2:将用户USERM

18、AN的密码修改为NewPassword: ALTER USER USERMAN IDENTIFIED BY NewPassword; (2)PASSWORD EXPIRE关键词设立密码过期。 例3:设立用户USERMAN的密码立即过期,它在下一次登录时必须修改密码: ALTER USER USERMAN PASSWORD EXPIRE; (3)ACCOUNT LOCK关键词锁定用户。 例4:锁定用户USERMAN,使其无法登录到数据库: ALTER USER USERMAN ACCOUNT LOCK; (4)ACCOUNT UNLOCK关键词解锁用户。 例5:解除

19、对用户USERMAN的锁定: ALTER USER USERMAN ACCOUNT UNLOCK; 3、 删除用户 DROP USER语句也可以删除指定的用户。 DROP USER 用户名 [CASCADE]; 4、 查询用户 例5:SELECT username, profile,account_status,created FROM dba_users WHERE username=’ty’; 不同用户可以对数据库进行不同的操作,所有对数据库可以进行操作的用户都必须具有一定的操作权限,而不同用户权限不全相同。为不同用户赋予不同权限的目

20、的是为了保证数据库的安全,以下关于用户赋予、回收权限的操作。 5、 授予系统权限 使用GRANT语句,其语法如下: GRANT system_privilege [ , ... ] TO { user_name [ , ... ] | role_name [ , ... ] | PUBLIC } [ WITH ADMIN OPTION ] ; 例6:对于用户USERMAN授予SYSDBA角色: GRANT SYSDBA TO USERMAN; 6、 授予对象权限 使用GRANT语句,其语法如下: GRANT object_privilege [ , ... ] | A

21、LL [ PRIVILEGES ] ON object_name TO { user_name [ , ... ] | role_name [ , ... ] | PUBLIC } [ WITH GRANT OPTION ] ; Oracle数据库的权限太多,对权限的管理工作太复杂,使用角色可以很好的解决这个问题。角色是权限的集合,以下关于角色的管理。 7、 创建角色 创建角色的语法如下: Create role 角色名 [not identified | identified {by 口令|externally|globally}]; 例7: 创建一个角色s

22、r_admin,还用数据库口令认证方式。 create role sr_admin identified by admin; 8、 给角色授权 给角色授权的语法如下: Grant {All|对象权限1 [,对象权限2…] }[列1[,列2]…] On{[模式名.]对象名|directory 目录名} to 角色 [with grant option]; 例8:grant create session to sr_admin; 9、 删除角色 Drop role 删除角色 格式: Drop role 角色; 思考题: 完毕如下操作的命令代码: 1、 以sys用户登

23、陆sqlplus. sqlplus sys/123 as sysdba 2、 创建角色role1。 Create role role1 3、为角色role1授予create session、resource权限。 grant create session to role1; grant resource to role1; 3、 创建用户,指定密码、表空间。用户名命名以本人姓名的拼音首字母缩写+‘_’+学号最后两位。 Create user ty_06 identified by 123 default tablespace users temporary tabl

24、espace temp; 5、修改用户密码。 alter user ty06 identified by 123; 6、为用户授予系统权限UNLIMITED TABLESPACE。 grant UNLIMITED TABLESPACE to ty06; 7、为用户指定角色role1。 grant role1 to ty06; 8、收回用户的UNLIMITED TABLESPACE权限。 revoke UNLIMITED TABLESPACE from ty06; 9、锁定用户。 10、解锁用户。 12、删除用户。 13、删除角色role1。 14、忘掉SYS用

25、户的解决方法。 Sqlplus / as sysdba Alter user sys identified by 123; Commit; Connect sys/123 as sysdba 实验4 实验名称:表的管理 实验学时:4 实验目的: 1)了解Oracle表和视图的概念。 2)纯熟掌握使用SQL语句创建表。 3)学习使用SELECT语句查询数据。 实验内容及环节: 1、 创建表 CREATE TABLE语句的基本使用方法如下所示: CREATE TABLE [.] (

26、atype> [DEFAULT expr] [CONSTRAINT constraint_name constraint_def] [, [DEFAULT expr] [CONSTRAINT constraint_name constraint_def],…] [CONSTRAINT constraint_name constraint_def]] [TABLESPACE 表空间名] [PCTFREE n] [PCTUSED n] [INITRANS n] [STORAGE

27、storage)]) 例1、创建表Users,SQL语句如下: CREATE TABLE dhb.Users1 (UserId Number Primary Key, UserName Varchar2(40), UserType Number(1), UserPwd Varchar2(40)); 2、 修改表 添加列语法形式如下: ALTER TABLE [schema.] table_name ADD new_column data_type [dafault expr ] [CON

28、STRAINT constraint_name constraint_def] [, [DEFAULT expr] [CONSTRAINT constraint_name constraint_def],…]; 例2、在表Users中添加一个列tmpcol: SQL> ALTER TABLE Users ADD (tmpcol NUMBER(5,2)); 3、 插入数据 INSERT语句的基本使用方法如下所示: INSERT INTO <表名> (列名1, 列名2, …, 列名n) VALUES (值1, 值2, …, 值n

29、); 例3、向表Users中插入数据 INSERT INTO Users (UserId, UserName, UserType, UserPwd) VALUES ( 1, 'Admin', 1, 'Admin'); COMMIT; 4、 修改数据 UPDATE语句的基本使用方法如下所示: UPDATE <表名> SET 列名1 = 值1, 列名2 = 值2, …, 列名n = 值n WHERE <更新条件表达式> 例4、将用户Admin的密码修改为111111: UPDATE Users SET UserPwd='111111' WHERE UserName=

30、'Admin'; COMMIT WORK; 5、 删除数据 DELETE命令删除表中的数据: DELETE <表名> WHERE <删除条件表达式> 例5、删除表Users中列UserName等于空('')的数据: DELETE FROM Users WHERE UserName = ''; COMMIT WORK; 6、 查询数据 (1)SELECT语句的基本语法结构如下: SELECT子句 [ INTO 子句 ] FROM 子句 [ WHERE 子句 ] [ GROUP BY 子句] [ HAVING 子句 ] [ ORDER BY 子句 ] SE

31、LECT语句中各子句的说明: SELECT子句 描述 SELECT子句 指定由查询返回的列 INTO 子句 创建新表并将结果行插入新表中 FROM 子句 指定从其中检索行的表 WHERE 子句 指定查询条件 GROUP BY 子句 指定查询结果的分组条件 HAVING 子句 指定组或聚合的搜索条件 ORDER BY 子句 指定结果集的排序 UNION运算符 将两个或更多查询的结果组合为单个结果集,该结果集包含联合查询中的所有查询的所有行 COMPUTE子句 生成合计作为附加的汇总列出现在结果集的最后。当与BY一起使用时,COMPUTE子句在结果集内生成控

32、制中断和分类汇总。可在同一查询内指定COMPUTE BY和COMPUTE FOR子句 FOR子句用于指定BROWSE或XML选项 OPTION子句 应在整个查询中使用指定的查询提醒。每个查询提醒只能指定一次,但允许指定多个查询提醒。用该语句只也许指定一个OPTION子句。查询提醒影响语句中的所有运算符。假如主查询中涉及UNION,则只有涉及UNION运算符的最后一个查询可以有OPTION子句。 例6、在SELECT语句中查询指定的列名 COL EMP_NAME FORMAT A20 COL SEX FORMAT A10 COL TITLE FORMAT A10 SELEC

33、T Emp_name, Sex, Title FROM dhb.Employees; (2)使用ROWNUM (3)使用LIKE关键字实现模糊查询 Oracle的通配符及其含义 % 包含零个或多个任意字符的字符串 _ 任意单个字符 ? 任意单个字符 # 表达0——9的数字 [] 指定范围或集合中的任意单个字符 查询所有身份证号中包含ddd的员工记录 例7、SELECT EMP_NAME, TITLE, IDCard FROM DHB.Employees WHERE IDCard LIKE '%ddd%'; (3)在SELECT中使用DECODE函数 DEC

34、ODE函数语法如下: DECODE(<输入值>,<值1>,<结果1>,[,<值2>,<结果2>…][,<默认结果>]) 假如<输入值>等于<值1>,则DECODE函数返回<结果1>;假如<输入值>等于<值2>,则DECODE函数返回<结果2>,以此类推。假如参数列表中没有与<输入值>相等的值,则DECODE函数返回<默认结果> 例8、SELECT Emp_name, DECODE(Sex, '男', '先生', '女', '女士', '未知') AS Sex FROM DHB.Employees; (4)在SELECT中使用CASE函数 CASE函数还可以根据不同逻辑表达式是否成立

35、来决定函数的返回值,语法如下: CASE WHEN <逻辑表达式1> THEN <结果1> [WHEN <逻辑表达式2> THEN <结果2> …] [ELSE <默认结果>] END 例9:在Employees中,将员工工资分3个级别,工资小于等于3000的级别为低,工资大于3000且小于5000的级别为中,工资大于等于5000的级别为高。 SELECT Emp_name, Wage, CASE WHEN Wage<=3000 THEN '低' WHEN Wage>3000 AND Wage<5000 THEN '中' WHEN Wage>=5000 THEN '高' END

36、 AS GRADE FROM DHB.Employees; (5)保存查询结果 在CREATE TABLE语句中使用SELECT子句可以将查询结果集填充到新建的表中。新表的结构由选择列表中列的特性定义。语法如下: CREATE TABLE <新表名> AS