这个不用存储过程 select to_char(to_date(&d,'yyyymmdd'),'yyyy-mm-dd') from dual;
--存储过程 create or replace procedure todatestr(s varchar2,s1 out varchar2) is begin s1:=substr(s,1,4)||'-'||substr(s,5,2)||'-'||substr(s,7,2); end; --测试 declare s1 varchar2(100); begin todatestr('20080101',s1); dbms_output.put_line(s1); end; --输出结果 2008-01-01
select to_char(to_date(&d,'yyyymmdd'),'yyyy-mm-dd') from dual;
create or replace procedure todatestr(s varchar2,s1 out varchar2) is
begin
s1:=substr(s,1,4)||'-'||substr(s,5,2)||'-'||substr(s,7,2);
end;
--测试
declare
s1 varchar2(100);
begin
todatestr('20080101',s1);
dbms_output.put_line(s1);
end;
--输出结果
2008-01-01