计算机专业复习资料.doc

上传人:鲁** 文档编号:559860003 上传时间:2023-02-19 格式:DOC 页数:6 大小:48.51KB
返回 下载 相关 举报
计算机专业复习资料.doc_第1页
第1页 / 共6页
计算机专业复习资料.doc_第2页
第2页 / 共6页
计算机专业复习资料.doc_第3页
第3页 / 共6页
计算机专业复习资料.doc_第4页
第4页 / 共6页
计算机专业复习资料.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《计算机专业复习资料.doc》由会员分享,可在线阅读,更多相关《计算机专业复习资料.doc(6页珍藏版)》请在金锄头文库上搜索。

1、一、触发器触发器是一种特殊类型的存储过程,当触发表执行DML操作时被Oracle系统自动执行。触发器可以实现复杂的数据完整性规则,达到保护触发表中数据的目的。1、触发器的类型(1)按触发事件的不同,触发器可以分为插入型(INSERT)、更新型(UPDATE)和删除型(DELETE)触发器。(2)根据指定的事件和触发器执行的先后次序,触发器可以分为BEFORE型和AFTER型触发器。如果在指定的事件(INSERT、UPDATE或者DELETE)之前执行触发器,这类触发器称为BEFORE触发器,若在指定的事件之后执行触发器,则称这类触发器为AFTER触发器。(3)根据触发的级别的不同,触发器可以分

2、为行触发器和语句触发器。对于行触发器受触发器事件的影响的每一行都将引发触发器的执行;而对于语句触发器,触发事件只触发一次,即使有若干行受触发事件的影响,也只执行一次触发操作。2、创建触发器注意事项Oracle提供了SQL Developer和PL/SQL语句两种方式创建触发器。创建触发器时,在触发器内可以包含各种PL/SQL语句,但以下情况除外:触发器不可以在定义它的表上执行DML操作;触发器不可以执行COMMIT、ROLLBACK或者SAVEPOINT语句,而且也不可以调用包含这些语句之一的存储过程或者函数;不可以在触发器中声明LONG或者LONG RAW变量。3、使用PL/SOL创建触发器

3、使用PL/SOL中的CREATE TRIGGER命令可任意用来创建触发器,其基本语法格式为: CREATE OR REPLACE TRIGGER用户方案.BEFORE|AFTER|INSTEAD OFINSERT |ORDELETEORUPDATE OF列1,NON 用户方案.FOR EACH ROWWHENBEGIN PL/SQL语句END 触发器名;例:1)为用户方案SCOTT的客户表CUSTOMER创建插入型触发器,当添加新客户信息时,显示“欢迎新客户注册!”。CREATE OR REPLACE TRIGGER SCOTT.TRG_ADDCUSTOMER1AFTER INSERTON S

4、COTT.CUSTOMERBEGIN DBMS_OUTPUT.PUT_LINE(欢迎新客户注册!);END TRG_ADDCUSTOMER1;-输入下面的INSERT命令验证结果:INSERT INTO CUSTOMER (CUSTID, CUSTNAME)VALUES(C080113002, 陈莉);(2)为用户方案SCOTT的客户表CUSTOMER创建删除型触发器,当删除客户信息时,显示删除客户记录的信息。CREATE OR REPLACE TRIGGER TRG_REMOVECUSTOMERBEFORE DELETEON CUSTOMERFOR EACH ROWBEGIN DBMS_OU

5、TPUT.PUT_LINE(待删除的记录为:); DBMS_OUTPUT.PUT_LINE(:OLD.CUSTID| | :OLD.CUSTNAME);END TRG_REMOVECUSTOMER;-输入下面的DELETE命令验证结果:DELETE CUSTOMERWHERE CUSTID = C080113001;4、使用PL/SQL查看触发器例:查看用户方案SCOTT中所有触发器的名称,触发类型,触发事件,所有者和触发表等信息。Select trigger_name 触发器名,Trigger_type 触发器类型,Triggering_event 触发事件,Table_name 触发表Fr

6、om user_triggers;5、使用PL/SQL修改触发器修改触发器和修改视图类似,虽然ORACLE也提供ALTER TRIGGER命令,但它只用于重新编译或者验证现有触发器。如果需要修改触发器的定义,则仍然使用create or replace trigger命令。例:修改用户方案SCOTT的触发器PRC_ADDCUSTOMER1,当在客户表CUSTOMER中添加新纪录时,显示“欢迎您,XYZ”(XYZ为客户姓名)的信息。(1)修改触发器TRG_ADDCUSTOMER1:CREATE OR REPLACE TRIGGER TRG_ADDCUSTOMER1AFTER INSERTON C

7、USTOMERFOR EACH ROWBEGIN DBMS_OUTPUT.PUT_LINE(欢迎您, | :NEW.CUSTNAME);END TRG_ADDCUSTOMER1;(2)添加数据记录,执行触发器:INSERT INTO SCOTT.CUSTOMER(CUSTID,CUSTNAME)VALUES(C080113001, 张春明);6、使用PL/SQL删除触发器DROP TRIGGER用户方案.触发器名;例:删除用户方案SCOTT的触发器TRG_ADDCUSTOMER。DROP TRIGGER SCOTT. TRG_ADDCUSTOMER;二、备份数据库1、数据库故障分类 用户错误

8、语句故障 进程故障 介质故障2、备份的类型1)逻辑备份 导出方式是数据库的逻辑数据备份。2)物理备份 脱机备份和联机备份是物理数据备份。 脱机备份 当数据库正常关闭时使用脱机备份,需要备份下列文件:所有数据文件;所有控制文件;所有联机重做日志;init.ora文件(可选)。 联机备份:联机备份包括将每一个表空间设为备份状态,接着备份其数据文件,最后再将表空间恢复为正常状态。当数据库处于运行状态时,执行联机备份,备份以下文件:所有数据文件;所有归档的重做日志文件;一个控制文件。3、使用命令方式执行数据库备份3.1 完全数据库备份在执行完全数据库备份之前,应该确定备份哪些文件,通过查询V$DATA

9、FILE视图可以获取数据文件的列表:Select name from v$datafile;通过查询V$LOGFILE视图可以获取联机重做日志文件的列表:Select member from v$logfile;获取控制文件名称:Show parameter control_files;实现完全数据库备份,通常包括实现一致的完全数据库备份和检验备份两个步骤:(1)实现一致的完全数据库备份在备份之间要先关闭数据库,实现步骤如下:先关闭数据库,命令如下(任选其一):Shutdown normal;Shutdown Immediate;Shutdown Transactional;然后,备份组成数据

10、库的所有文件,比如:Xcopy d:oracleproduct10.2.0oradatamydb e:orabackup(该命令需要在DOS下运行)最后,在备份结束后重新启动数据库:Startup;(2)检验备份语法格式:DbvFile=filename|start=block_address|end= block_address|blocksize=block_size|logfile=logfile_name|feedback=n|Parfile=parfile_name|userid=user_id|Segment_idsegment_idHegh_scn=scn如:C:dbv file

11、=e:orabackupsystem01.dbf3.2 联机表空间备份实现联机表空间备份通常包括确定数据文件、标记联机表空间备份开始、备份联机数据文件和标记联机表空间备份结束4个步骤。1)确定数据文件Select tablespace_name,file_name from sys.dba_data_files;2)标记联机表空间备份开始Alter tablespace users begin backup;3)备份联机数据文件Copy d:oracleproduct10.2.0oradatamydbusers01.dbf e:orabackuptsbak04)标记联机表空间备份结束Alter

12、 tablespace users end backup;3.3 脱机表空间备份1)确定脱机表空间的数据库Select tablespace_name,file_name from dba_data_files;2)使表空间脱机Alter tablespace users offline normal;3)备份脱机的数据文件Copy d:oracleproduct10.2.0oradatamydbusers01.dbf e:orabackuptsbak14)将表空间联机Alter tablespace users online;3.4 控制文件备份1)备份控制文件为物理文件首先,修改数据库。例

13、如,建立一个新的数据文件。Alter databaseCreate datafile d:oracleproduct10.2.0oradatamydbusers05.dbfAs d:oracleproduct10.2.0oradatamydbusers01.dbf;然后,备份数据库的控制文件。例如,备份控制文件到指定的位置。Alter databaseBackup controlfile to e:orabackupctrlbakcf.bak;2)备份控制文件到跟踪文件Alter databaseBackup controlfile to trace;二、恢复数据库恢复类型:实例恢复、崩溃恢复

14、和介质恢复。1、热备份恢复步骤:1)使用带offline选项的alter database命令将出现故障的表空间脱机。如:Alter databaseDatafile e:oracleproduct10.2.0oradatamydbusers01.dbf offline;2)使用操作系统自带的命令或其他方式将表空间的备份文件复制到原来的位置,并覆盖原文件。如:Copy e:orabackuptsbak0users01.dbf d:oracleproduct10.2.0oradatamydbmydb3)使用recover命令进行介质恢复,恢复表空间。如:Recover datafile d:oracleproduct10.2.0oradataorclmydbusers01.dbf;4)使用带online选项的alter database命令将表空间联机。如:Alter databaseDatafile d:oracleproduct10.2.0oradataorclmydbuserso1.dbf online;2、基于cancel的恢复步骤:1)当遇到数据库错误时,使用shutdown immediate关闭数据库,并将备份的数据复制到相应的位置。2)启动数据库。Startup mount;3)恢复数据库。Recover database until cancel;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号