读书人

存储过程传日期参数没法查询数据

发布时间: 2013-01-07 10:02:24 作者: rapoo

存储过程传日期参数无法查询数据?
本帖最后由 leech125 于 2012-12-07 16:49:14 编辑 我执行以下代码row_count=0
declare
row_count number;
END_DATE DATE; --进出数量累计计算结束时间
begin

END_DATE := SYSDATE;
row_count := 0;

select count(*)
into row_count where passdate < end_date
from table ;
end;

我执行以下代码row_count > 0
declare
row_count number;
begin

row_count := 0;

select count(*)
into row_count where passdate < SYSDATE
from table ;
end;

两者区别是什么?
[解决办法]
先 SET SERVEROUTPUT ON
然后
declare
row_count number;
END_DATE DATE;
begin
END_DATE := SYSDATE;
row_count := 0;
select count(*)
into row_count
from sapdt_wakh where logdate < end_date;
dbms_output.put_line('this is the count:'
[解决办法]
to_char(row_count));
end;
[解决办法]

END_DATE := SYSDATE;
这样子赋值的话,END_DATE的值就是 NLS_DATE_FORMAT里面设置的格式
[解决办法]

引用:
END_DATE := SYSDATE;
这样子赋值的话,END_DATE的值就是 NLS_DATE_FORMAT里面设置的格式

END_DATE 定义成 timestamp 估计可以吧

读书人网 >oracle

热点推荐