Postgresql存储过程

Pg的存储过程与oracle的稍微有点不一样,它的结构是这样的

语法:

CREATE OR REPLACE FUNCTION function_name(arg1,arg2...) RETURNS return_type AS
$BODY$
  DECLARE
  变量声明
  BEGIN
  函数体
  END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
CREATE OR REPLACE FUNCTION function_name() RETURNS character varying
  VOLATILE
AS $body$
/*
    功能描述:***
*/

DECLARE
  start_time TIMESTAMP (6);
  end_time TIMESTAMP (6);

BEGIN

  --开始时间
  start_time := date_trunc('second', clock_timestamp());
  
  raise notice '执行******开始 , 开始时间 is % ',start_time;
  
##########这里就是要执行的语句#############
  exception
    when others then
        --使用SQLERRM 来显示错误信息。
        raise exception '(%)', sqlerrm;
      return 'fail';


  --结束时间
  end_time := date_trunc('second', clock_timestamp());

  SELECT TO_CHAR(AGE(end_time,start_time),'hh24:mi:ss') INTO cost_time;

  raise notice '执行******结束 , 结束时间 is %',end_time;

return 'success';

END;
$body$ LANGUAGE plpgsql

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章