oracle与mysql存储过程语法区别

1970-01-01 08:00

mysql 、oracle存储过程语法区别

1、 条件语句:mysql使用elseif关键字,oracle是elsif关键字; oracle: if表达式 then 表达式; elsif 表达式; endif; mysql: if表达式then 表达式; elseif 表达式; endif; 2、 字符串连接 oracle使用 || ; mysql 使用concat函数; 3、 日期计算(年月日数) mysql:

函数TimeStampDiff()是MySQL本身提供的可以计算两个时间间隔的函数,语法为:TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2),其中unit单位有如下几种,分别是:SECOND, MINUTE, HOUR, DAY,WEEK, MONTH, QUARTER, or YEAR。

当前时间:sysdate()

字符转日期:str_to_date() 分隔符一致,年月日要一致;示例: select str_to_date('2008-4-2 15:3:28','%Y-%m-%d%H:%i:%s'); 日期转字符:DATE_FORMAT(date,format)

SELECT DATE_FORMAT(sysdate(), '%Y-%m-%d %H:%i:%s'); 数字转字符:concat(num,’’); oracle:

months_between 求日期间隔月份,除以12即为间隔年份; 天数,只需要日期直接相减; 当前时间:sysdate

字符转日期:to_date();

日期转字符:to_char(date,format) to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'); 数字转字符:to_char(num) 4、 定义游标 oracel:

CURSOR curPlanIndex is SELECT a.INDEX_SCORE

,c.enum_value,c.dn_value,c.up_value,c.score,c.score_desc FROM eval_plan_index a

JOIN eval_index_score c onc.index_id=a.index_id and a.plan_id = c.plan_id WHERE a.plan_id = V_PLAN_ID and a.index_id= V_INDEX_ID order by dn_value; MYSQL:

declare curPlanIndex cursor for SELECT a.INDEX_SCORE

,c.enum_value,c.dn_value,c.up_value,c.score,c.score_desc FROM eval_plan_index a

JOIN eval_index_score c onc.index_id=a.index_id and a.plan_id = c.plan_id WHERE a.plan_id = V_PLAN_ID and a.index_id= V_INDEX_ID order by dn_value; 5、 selectinto 赋值

oracle 有exception错误处理 begin

select value_name into vc_num_unit fromsys_dict

where dict_code = 'szdw' and value_code =v_num_unit and rownum <=1 ; exception

when no_data_found then vc_num_unit := ''; end;

mysql 如果select 没有数据,则不执行into操作,变量值保持为上次结果,需要手工重置。最好能limit 1;只返回一条数据;


oracle与mysql存储过程语法区别.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:小学数学四年级上册《小数乘小数》课堂教学实录

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: