Oracle学习笔记20150919异常处理表与方案的备份

来源:互联网 发布:上瘾网络剧完整版 编辑:程序博客网 时间:2024/06/03 23:39
1.常见异常
no_date_found
too_many_rows
cast_not_found


2.异常处理的基本语法
begin
--执行语句
exception
--捕获异常
when 异常名称 then
--执行语句 
when 异常名称 then
when others then
--其他
end;
实际例子:编写一个接收雇员编号显示雇员信息的过程,如果编号不存在就报错.
create or replace procedure pro1is
v_ename emp.ename%type;
begin
select ename into v_ename from emp where empno=v_in_empno;
dbms_output.put_line('名字是'||v_ename);
exception
when NO_DATE_FOUND then
dbms_output.put_line('你输入的编号不存在');
when others then
dbms_output.put_line('未知错误');

end;

3.sys是超级管理员拥有dba角色sysdba系统权限sysoper系统权限,所有数据字典的基表和视图都存储在sys用户中,任何用户都不能手动更改,数据库自己维护,system是系统管理员具有dba角色,sysdba系统权限,存放次一级的内部数据 .sys必须以as sysdba或者as sysoper登录.当system以nomal方式登录则此时system就是普通dba用户.

4.数据库备份分为物理备份与逻辑备份,逻辑备份只能在数据库open的情况下,物理备份既可以在数据库开启状态备份也可以在数据库关闭状态备份.

逻辑备份是指使用工具export将数据对象的结构和数据导出到文件的过程,逻辑恢复是指当前数据库对象被误操作而损坏后使用工具import利用备份的文件把数据对象导入到数据库的过程.

5.export工具与import工具指的都是exe文件.

6.导出表的基本语法为(命令需要在dos下执行)

导出自己方案的表exp userid=用户名/密码@数据库实例名 tables=(表名1,表名2....) file=备份全路径;(备份文件的后缀名一般是.dmp但不是硬性要求)

导出其他方案的表exp  userid=用户名/密码@数据库实例名 tables=(方案名.表名1,方案名.表名2....) file=备份全路径;

7.如果希望导出其他方案的表往往需要system用户完成.

8.只导出表的结构exp userid=用户名/密码@数据库实例名 tables=(表名1,表名2....) file=备份全路径 rows=n;(代表no rows,不要行)

9.直接导出exp userid=用户名/密码@数据库实例名 tables=(表名1,表名2....) file=备份全路径 direct=y;(主要目的是为了提高导出速度,要求数据库字符集与客户端字符集完全一致才能使用此方法,否则报错)

10.导出方案,需要把方案整体导出时可以使用此命令exp userid=用户名/密码@数据库实例名 owner=用户名 file=备份全路径;

11. 如果导出其他的方案则需要dba权限或者exp_full_datebase权限,基本语法为exp userid=用户名/密码@数据库实例名 owner=(所有者1,所有者2) file=备份全路径;

0 0