小编Ali*_*are的帖子

控制到达函数结束而没有 RETURN

我有这个功能,PostgreSQL当我尝试执行它时,我收到以下错误消息:

 ERROR:  control reached end of function without RETURN

CONTEXT:  PL/pgSQL function "SA_PRJ".usp_add_timesheet_record_neww(integer,integer,numeric,numeric,character varying,character varying)
Run Code Online (Sandbox Code Playgroud)

我不确定,但我认为返回是问题所在,最后必须返回吗?

CREATE OR REPLACE FUNCTION "SA_PRJ".usp_add_timesheet_record_neww(p_uid integer, p_project_id integer, p_allocated_time numeric, p_achieved_time numeric, p_task_desc character varying, p_obs character varying)
  RETURNS character varying AS
$BODY$
declare alloc_id integer;
declare project integer;
declare allocated integer;
declare allocated_time numeric;
BEGIN

    project := p_project_id;

    allocated_time := (SELECT SUM(fld_allocated_time)
    FROM "SD_PRJ".tbl_project_timesheet
    WHERE fld_project_id = project);

    allocated := (SELECT fld_allocated_days FROM "SD_PRJ".tbl_project where fld_id = project);

    if not "SA_ADM".usp_check_permission(p_uid, …
Run Code Online (Sandbox Code Playgroud)

sql postgresql stored-procedures postgresql-9.1

3
推荐指数
1
解决办法
1万
查看次数

Oracle exp函数数值溢出错误

我试图在Oracle中做这样的事情:

   select exp(300) from dual
Run Code Online (Sandbox Code Playgroud)

而且我得到数字溢出错误,我怎么能从300或更大的数字指数,因为我不知道.

谢谢.

sql oracle plsql oracle10g oracle11g

3
推荐指数
2
解决办法
1030
查看次数