有人能告诉我以下语法的问题在哪里吗?我只是想在存储过程中运行一个简单的SELECT语句。
CREATE OR REPLACE PROCEDURE PVSSRDB.GETBATTERYSTATUSFORALLLOGGERS
(
p_Logger OUT e.comment_,
p_tStamp OUT h.ts,
p_Val OUT h.value_number
)
AS
BEGIN
select
e.comment_,
max(h.ts),
avg(h.value_number)
INTO
p_Logger,
p_tStamp,
p_Val
FROM
PVSSRDB.ELEMENTS e inner join PVSSRDB.DB15MINHISTORY_00100009 h on h.element_id =e.element_id
WHERE
e.element_name like 'System1:H%.BatteryCondition'
GROUP BY
e.comment_
ORDER by 2 asc
END GETBATTERYSTATUSFORALLLOGGERS;
我一直遇到相同的三个错误,分别是:
- 错误(9,3):PL/SQL:SQL语句被忽略
- 错误(23,18):PL/SQL:ORA_00933:SQL命令未正确结束
- 错误(24,34):PLS-00103:遇到符号“end-of-file”,但期望以下内容之一:(begin、case、declare、end、exception、exit、for、goto、if、loop、mod、null、pragma、raise、return、select、update、while、with、<<、continue、close、current、delete、fetch、lock、insert、open、rollback、savepoint、set、sql、execute、commit、forall、merge、pipe、purge)