在Oracle里写好了存储过程,却不知道如何执行并得到返回值

iriver103 2006-07-24 07:28:11
写了个存储过程返回当前日期:
create or replace procedure getCurrnetDate(outdate out date)
as
begin
select current_date into outdate from dual;
commit;
end;
/
请问在sqlplus中应该如何执行并获得返回的日期呢?
...全文
257 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzjj999 2006-07-25
  • 打赏
  • 举报
回复
需要将日期转换下字符串就可以输出了

已写入文件 afiedt.buf

1 create or replace procedure getCurrnetDate(outdate out varchar2)
2 as
3 begin
4 select to_char(current_date) into outdate from dual;
5 commit;
6* end;
SQL> /

过程已创建。

SQL> var test varchar2(50);
SQL> exec getCurrnetDate(:test)

PL/SQL 过程已成功完成。

SQL> print test;

TEST
--------------------------------------------------------------------------------
25-7月 -06
yjdn 2006-07-25
  • 打赏
  • 举报
回复
我的是9i

zzjj999 2006-07-25
  • 打赏
  • 举报
回复
楼上 ORACLE 版本多少啊? 我的 var .... Date 无date类型
yjdn 2006-07-25
  • 打赏
  • 举报
回复
SQL> var currentDate Date;
SQL> exec getCurrnetDate(:currentDate);

PL/SQL procedure successfully completed
currentDate
---------
2006-7-25 13:26:18
龙翔飞雪 2006-07-24
  • 打赏
  • 举报
回复
我倒~
用pl/sql developer吧,
新建test script就行
sxykje 2006-07-24
  • 打赏
  • 举报
回复
在你存储过程名字上右击--》test
要返回结果集
你的存储过程要加个o_cursor参数
最后加上OPEN o_cursor FOR select current_date from dual;

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧