db2的存储过程与ORACLE区别

上传人:平*** 文档编号:13299733 上传时间:2017-10-23 格式:DOCX 页数:2 大小:15.02KB
返回 下载 相关 举报
db2的存储过程与ORACLE区别_第1页
第1页 / 共2页
db2的存储过程与ORACLE区别_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

《db2的存储过程与ORACLE区别》由会员分享,可在线阅读,更多相关《db2的存储过程与ORACLE区别(2页珍藏版)》请在金锄头文库上搜索。

1、db2 的存储过程与 ORACLE 区别很大: (1) DB2 中不支持”or replace”的语法;且参数名与 IN/OUT 的位置也需互换,声明变量时须使用 declare 关键字,为变量赋值时须使用 set 关键字。(2 ) 而对于 oracle 中的%TYPE 的功能,DB2 中好像还没有很好的实现方式。(3 ) 同样,oracle 中清空表的命令 truncate,DB2 也不能原样引用,但它也提供了 2 种实现方式,一是将一空文件的内容导入表中 import null.dat ;二是设置表的特性为不记录日志 alter table tablename .但是第二种方式会在某些情况

2、下导致原表无法使用,具体的还没弄清楚呢。(4 ) 至于 sql 语句表现不同应该就是 oracle 与 db2 各自的语法了。比如说 oracle 的rownum,db2 可以使用 fetch first n only,或 row_number() over()等。DB2 有更好的扩展性和性能。Oracle 触发器无法支持并行oracle 触发器例子:CREATE OR REPLACE TRIGGER CRM.T_SUB_USERINFO_AUR_NAME AFTER UPDATE OF STAFF_NAME ON CRM.T_SUB_USERINFO REFERENCING OLD AS O

3、LD NEW AS NEW FOR EACH ROW declare begin if :NEW.STAFF_NAME!=:OLD.STAFF_NAME then begin 客户投诉update T_COMPLAINT_MANAGE set SERVE_NAME=:NEW.STAFF_NAME where SERVE_SEED=:OLD.SEED; oracle 存储过程例子:create or replace PROCEDURE p_insert_t (v_x in NUMBER) IS temp_id number; BEGIN FOR i IN 1.v_x LOOP select SEQ_B_USER_ID.nextval into temp_id from dual; insert into buser (id, username, nickname, status, createdtime) values(temp_id, to_char(temp_id),to_char(temp_id), 0, sysdate); END LOOP; END; -execute

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

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