一、SQLserver SP --> oracle SP
- str >> TO_CHAR
- 定义、赋值
begin declare @aaa varchar(max) set @aaa='ssss' >>> declare aaa varchar2(4000) begin aaa := 'sss'
- 时间
cast() >>>> to_char(sysdate,'yyyymmdd hh24:mi:ss')
dbo.StrJoin(asd,';') >>>>> replace(wmconcat(asd),',' ,';')
- oracle在存储过程中清空、删除、创建表`
execute immediate'truncate table t_name
execute immediate'drop table t_name
execute immediate'create table t_name as select>>>
- 字符串截取
left(aaa,1) 左面起1个字符 >>> substr(aaa,1,1)
right(aaa,2) 右面起2个字符 >>> substr(aaa,-2)
- exists()
if exists(select ...)
>>>>>
select count(1) into v_count from t_name
if v_count >0 then
- substring >>> substr
- char(10) >>> chr(10)
CHARINDEX('子串','sdsq',2) INSTR('sdsq','子串',2)
11.字段数据拼接
dbo.StrJoin(ziduan,';')(默认为逗号)>>> replace(wm_concat(ziduan),',',';')
二. SP调用SP
方法1:
execute immediate'begin sp_name(:1,:2); end;'
using out v1,v2;
方法2:
sp_name(v1,v2);
insert into t_name values (v1,v2);
三、游标
SQLserver的游标可以写在begin中
oracle 游标需要写在begin之前