create or replace
Procedure PRO_Get_NowData
(
P_FCID VARCHAR2,
o_cur out sys_refcursor
)
AS
V_Command varchar2(2000);
BEGIN
V_Command:=
'SELECT * FROM (select sum(ACTIVEPOWER) AS ACTIVEPOWER,avg(WindSpeed) AS WindSpeed,avg(Temperature) AS Temperature,avg(WindDirection) AS WindDirection from TB_'
||P_FCID||'_FJ_'||substr(sysdate,1,4 )||
' where RECORDTIME in(select RECORDTIME from TB_'
||P_FCID||'_FJ_'||substr(sysdate,1,4 )||
' group by RECORDTIME having count(*)>0 ) group by RECORDTIME ORDER By RECORDTIME DESC) Where ROWNUM = 1';
OPEN o_cur FOR v_command;
END PRO_Get_NowData;
在sqldeveloper中编写的存储过程,jsp调用时提示缺少右括号,怎么调试都找不到错误。
Procedure PRO_Get_NowData
(
P_FCID VARCHAR2,
o_cur out sys_refcursor
)
AS
V_Command varchar2(2000);
BEGIN
V_Command:=
'SELECT * FROM (select sum(ACTIVEPOWER) AS ACTIVEPOWER,avg(WindSpeed) AS WindSpeed,avg(Temperature) AS Temperature,avg(WindDirection) AS WindDirection from TB_'
||P_FCID||'_FJ_'||substr(sysdate,1,4 )||
' where RECORDTIME in(select RECORDTIME from TB_'
||P_FCID||'_FJ_'||substr(sysdate,1,4 )||
' group by RECORDTIME having count(*)>0 ) group by RECORDTIME ORDER By RECORDTIME DESC) Where ROWNUM = 1';
OPEN o_cur FOR v_command;
END PRO_Get_NowData;
在sqldeveloper中编写的存储过程,jsp调用时提示缺少右括号,怎么调试都找不到错误。
解决方案 »
- 关于oracle '' 的问题,求解惑
- Oracle:启动 Database Control oracle em 打不开 网页显示404
- SQL查询语句
- 用oracle做数据端,写一个类似procedure的东西,有个输入项不会写,请教大家了,帮忙啊
- 安装Oracle10g时候遇到的问题,急……请大家赐教~
- 急求两表关联问题~~~~~~!!
- 请教一下下面这句sql语句是什么意思?
- 在redhat7.2上怎么通过Linux上的exp工具从win2k的oracle8.1.7导出数据文件export.dmp文件呢?
- 关于oracle的安装
- 求一个SQL
- Oracle计算精度问题(有点难)
- 请教关于SQL优化的问题
-----加个空格看看。
RECORDTIME in (select
syadate是日期类型啊。substr需要的是字符类型呀,你的存储过程编译通过了没有呢?
SQL> select substr(sysdate,1,4) from dual;SUBSTR(SYSDATE,1,4)
-------------------
19-1
(substr(to_char(sysdate,'yyyy/mm/dd hh24:mi:ss'),1,4 ))
(select sum(ACTIVEPOWER) AS ACTIVEPOWER,
avg(WindSpeed) AS WindSpeed,
avg(Temperature) AS Temperature,
avg(WindDirection) AS WindDirection
from TB_P_FCID_FJ_2010
where RECORDTIME in
(select RECORDTIME from TB_P_FCID_FJ_2010 group by RECORDTIME having count(*)>0)
group by RECORDTIME ---这里分了组,但是你的选择列中没有这个列啊。你在plsql下执行成功?
ORDER By RECORDTIME DESC
) Where ROWNUM = 1
-------你的语句有问题啊。。