oracle导出存储过程
发布时间: 2024-10-30 19:24:24
需要
还有一种是存储过程使用的表有结构上的改变,需要重新编译一下。解决方法如下:重新编译一下,如果不成功,就是有语法问题,你需要修改存储过程
㈡ Oracle怎么导出存储过程
1、首先登录到数据库中,点击右上角有个工具栏,点击工具栏上的tools。
㈢ 如何导出ORACLE指定存储过程
1、要想连接到一个数据库,先得配置一个tnsnames.ora文件。路径位于 【XX】/NETWORK/ADMIN/tnsnames.ora。【XX】视具体情况而定。
截图中红框标记的地方需要改成你需要连接的数据库的信息。
注意事项
若出现乱码,可能需要将编写的sql文件转换为utf-8格式。
若提示无法创建spool文件,请确保目录C:/EXP/DDL存在,或者指定新的路径。
㈣ oracle带参(传入,传出)的存储过程怎么执行
1、新建存储过程,Create or ReplaceProcere CHK_SYS_EMP 检查系统工液陆族号。
㈤ oracle数据库存储过程问题: 传入一个字符串(字符串格式如:“辣椒_食品,西红柿_食品,板鞋_
数组在Oracle里面使用不怎么方便,一般情况下很少使用,给你提个新方法实现你的功能。
设定数据库结构:
CREATETABLEGOODS
(
PMVARCHAR2(20BYTE),--品名
FLVARCHAR2(20BYTE),--分类
RQDATE,--日期
BZVARCHAR2(50BYTE)--备注
);
存储过程如下:
CREATEORREPLACEprocerePROC_split(In_StringINVARCHAR2)is
v_split1VARCHAR2(10)DEFAULT',';
v_split2VARCHAR2(10)DEFAULT'_';
lenNUMBERDEFAULT0;
nStrVARCHAR2(200);
nStr1VARCHAR2(40);
nStr2VARCHAR2(20);
nStr3VARCHAR2(20);
placeNUMBER(10)default1;
begin
--输入串格式
--'辣椒_食品,西红柿_食品,板鞋_服饰,植物油_食品,领带_食品,'
len:=length(In_String);
IFlen<1THEN
RETURN;
ENDIF;
nStr:=In_String;
place:=INSTR(nStr,v_split1,1,1);
WHILE(place>0)
LOOP
nStr1:=SUBSTR(nStr,1,place-1);
nStr:=SUBSTR(nStr,place+1);
place:=INSTR(nStr1,v_split2,1,1);
IF(place>0)THEN
nStr2:=SUBSTR(nStr1,1,place-1);
nStr3:=SUBSTR(nStr1,place+1);
UPDATEgoodsSETrq=SYSDATEWHEREpm=nStr2ANDfl=nStr3;
//dbms_output.put_line('nStr2=['||nStr2||'],nStr3=['||nStr3||']');
ENDIF;
place:=INSTR(nStr,v_split1,1,1);
ENDLOOP;
COMMIT;
endPROC_split;
/
测试语句:
DECLARE
IN_STRINGVARCHAR2(32767);
BEGIN
IN_STRING:='辣椒_食品,西红柿_食品,板鞋_服饰,植物油_食品,领带_食品,';
PROC_SPLIT(IN_STRING);
COMMIT;
END;
我的调试输出是:
nStr2=[辣椒],nStr3=[食品]
nStr2=[西红柿],nStr3=[食品]
nStr2=[板鞋],nStr3=[服饰]
nStr2=[植物油],nStr3=[食品]
nStr2=[领带],nStr3=[食品]
这里面只用了两个函数:INSTR,SUBSTR.
㈥ 在oracle中如何查看存储过程创建信息
登录过程所在的用户下,如果是pl/sql 工具可以选中过程名右键点view进行查看,如果是命令行,可以view 过程名 进行查看。
㈦ Oracle中怎样用存储过程将一段字符串以逗号为界截取,并将得到的子串存到另一张表中
热点内容