oracle存储过程中v_FirstMonth Bpms_Businessvalue.Currentdate%Type :=trunc(to_date(v_ReportDate,'yyyy/MM/dd'),'yyyy');变量赋值后为什么是null
此处的v_ReportDate是存储过程传入的参数
此处的v_ReportDate是存储过程传入的参数
解决方案 »
- 求助sys,system,sysdba密码,忘记初始安装密码了
- oracle 数据截取问题 用substr截取
- 大家进来看看,好问题在等着你们哦
- 如何对如下的sql语句进行优化?
- 问一个关于Oracle Enterprise Manager Console的问题?
- 时间差
- oracle7下,如何手工启动service?
- 這個SQL語句怎麼寫?<B>急急急!!!<B font = 32>
- 帮忙解决9i中的问题,谢谢!ORA-09275 CONNECT INTERNAL is not a valid DBA connection
- 怎么在Oracle 中获取某个应用执行的sql语句
- 求一个SQL语句
- ORACLE更改密码问题。
楼主是想要精确到年吗?可以直接的截取,用substr就行了
具体参考oracle官网对trunc讲解http://docs.oracle.com/cd/E11882_01/server.112/e26088/functions220.htm#SQLRF06151
我的代码如下:
set SERVEROUTPUT on;
create or replace procedure pro_test(v_ReportDate in varchar2)
as
v_FirstMonth TEST_TABLE.TEST_DATE%TYPE:=trunc(to_date(v_ReportDate,'yyyy/MM/dd'),'yyyy');
begin
DBMS_OUTPUT.PUT_LINE('v_FirstMonth='||v_FirstMonth);
end;
execute pro_test('2013-10-5');
结果是:v_FirstMonth=01-1月 -13
begin
v_FirstMonth := to_char(to_date('2013-01-18','yyyy/MM/dd'),'yyyy');
dbms_output.put_line(v_FirstMonth);
end;