经验分享:Informix和Oracle存储过程的异同(二)
2008-10-25 12:57:41 来源:WEB开发网3、在存储过程中调用另外一个存储过程
1)Informix
Call pNoParam();
Call pNormalParam(1, ‘a’) returning v_Result;
2)Oracle
pNoParam;
pNormalParam(1, ‘a’, v_Result);
4、日期操作
1)当前时间
① Informix
define cur_dtime_var datetime year to second;
当前日期时间: let cur_dtime_var = current; -- datetime
② Oracle
Currtime date;
Currtime := sysdate;
2)当前日期的增减
① Informix
let tmp_date = today + 3 UNITS day; -- 当前时间加三天
let tmp_datetime = current + 1 UNITS second; -- 当前时间加1秒种
② Oracle
Tmp_date := sysdate + 3; -- 当前时间加三天
Tmp_date := sysdate + 1/24/3600; --当前时间加1秒种
3)日期转换成字符串
① Informix
let v_PeriodEndTime = year(v_date)||extend(v_date,month to month)
||extend(v_date,day to day) ||extend(v_date,hour to hour)
||extend(v_date,minute to minute)|| extend(v_date,second to second);
② Oracle
v_PeriodEndTime := to_char(v_date, ’yyyymmddhh24miss’);
4)字符串转换成日期
假设字符串的形式是yyyymmddhhmiss形式的
① Informix
-- 直接转换成日期
let v_BeginDate = substr(v_BeginTime,1,4)||’-’||substr(v_BeginTime,5,2)
||’-’||substr(v_BeginTime,7,2)||’ ’||substr(v_BeginTime,9,2)
||’:’||substr(v_BeginTime,11,2)||’:’||substr(v_BeginTime,13,2);
更多精彩
赞助商链接