Oracle最后部分复习内容
2014-07-18 18:46
253 查看
<strong>子程序: 存储过程: 有名称的PLSQL块,称之为存储过程 语法: create or replace procedure p_emp_findsal 过程名(p_type in/out/in out p_name) as begin exception end end p_emp_findsal; 如何使用存储过程 1.创建存储过程 2.测试存储过程 测试: create or replace procedure p_emp_find(p_empno NUMBER) IS v_sal NUMBER(8,2); begin SELECT sal INTO v_sal FROM emp WHERE empno=p_empno; dbms_output.put_line(v_sal); end p_emp_find; create or replace procedure p_emp_find(p_empno NUMBER) IS v_sal emp.empno%TYPE; v_ename emp.ename%TYPE;-----------列类型 v_job emp.job%TYPE; v_mgr emp.mgr%TYPE; --select into 只能存储一条存储过程 --系统自定义三个预定义异常 begin SELECT sal,ename,job,mgr INTO v_sal,v_ename,v_job,v_mgr FROM emp WHERE empno=p_empno; dbms_output.put_line(v_sal); dbms_output.put_line(v_ename); dbms_output.put_line(v_job); dbms_output.put_line(v_mgr); EXCEPTION WHEN no_data_found THEN dbms_output.put_line('0000'); WHEN too_many_rows THEN dbms_output.put_line('11111'); WHEN OTHERS THEN dbms_output.put_line('11111111'); end p_emp_find; 函数: CREATE OR REPLACE FUNCTION f_emp_total_sal(p_deptno IN emp.deptno%TYPE) RETURN NUMBER AS v_sum NUMBER(8,2); BEGIN SELECT SUM(sal) INTO v_sum FROM emp WHERE deptno=p_deptno; -- dbms_output.put_line(v_sum);不要输出 RETURN v_sum; END f_emp_total_sal; 存储过程和函数的区别 1.存储过程和函数的区别 存储过程没有返回值,而函数有返回值 存储过程和函数都是Oracle的对象 存储过程和函数因为被提前编译且存储在服务器,所以安全,执行速度快 存储过程和函数是一个完整的事物单元。要么全部执行,要么都不成功 触发器 作用:审计,数据完整性,安全 定义:是数据库的一个对象 分类:系统触发器【作用在oracle系统上,例如,开机触发,关机前触发 】 DML触发器【insert ,delete,update,作用在表上】 替代触发器【作用在仕途上】 语法: create or replace trigger tr_emp_opater -before-insert or delete or update on 表 as declare --定义局部变量 begin --写业务[不允许写事务性语句,例如rollback,commit savepoint end tr_emp_update; 闪回:select * from emp as of timestamp sysdate -5/1440 插入:select * from emp t insert into emp; 4.数据的备份和还原: 1.delete操作单未commit的数据操作 delete from emp; rollback; 2.delete操作单已经commit的数据怎么恢复 insert into emp select * from emp as of timestamp sysdate-d/1440; commit 3.drop操作语句怎么恢复 flashback table table to before drop; 注意:这样删除的数据无法闪回 drop table emp purge 4.truncate 删除怎么恢复 exp(导出) imp(导入) </strong>
总复习:
1.Oracle的安装和卸载
2.Oracle客户端服务端的网络配置
3.SQL基础语法
4.Oracle的对象
5.PLSQL的开发
6。Oracle的数据库设计【powerdesigner】
7.数据库备份和还原
相关文章推荐
- oracle修改一个字段的某部分内容
- Oracle+SQL优化第一弹(前人种树,后人乘凉,翻译加上部分自己的内容,希望能给大家带来帮助)
- oracle 表生成类的属性,插入、更新部分语句内容.
- java复习-基础内容部分
- oracle卸载注册表的内容部分
- oracle替换表字段中的部分内容为指定内容
- oracle 表生成类的属性,插入、更新部分语句内容.
- DAY5之Python复习内容:函数(部分)
- 怎么样写查询语句查出字符串里某个特殊字符左边的那部分内容?
- 今天和一个同学聊天部分精彩内容选读,:)
- 替换数据库字段部分内容
- 如何解决 tomcat 下 oracle 缓冲池 读取 clob 字段内容 时的错误 "java.lang.ClassCastException: org.apache.commons.dbcp.DelegatingResultSet "
- 通过层实现页面部分内容展开与收缩
- 使用C++编写类似MFC的CString,部分功能,重新复习使用操作符重载
- 期货交易中的哲学智慧(人民大学讲座部分内容)
- 单线程和多线程访问数据库性能比较一性能比较部分(oracle 数据库)
- 明天要考ORACLE了,今天赶紧复习下
- 最常用SQL快速参考(其中某些部分只适合Oracle)
- CCNA的复习准备内容
- How to: 怎样保护Word文档的部分内容?