我有这个简单的SELECT程序:
create or replace PROCEDURE CST_FEEDBACK
(
LineID IN Integer
) AS
BEGIN
SELECT
T1.*
-- , Mgr.UserName as UserName
FROM F_Feedback T1
--LEFT JOIN tblUsers Mgr
--ON T1.EmpID = Mgr.EmpID
WHERE
T1.Line_ID = LineID
ORDER BY T1.Comments_TS DESC;
END CST_FEEDBACK;
我是Oracle n00b,我们在我们的商店中使用SQL Server但突然被迫切换到Oracle。我在尝试编译时收到此消息:
错误(7,1):PLS-00428:此SELECT中需要一个INTO子句 声明
任何人都可以告诉我为什么会这样,以及是否有某种方法来解决它?
答案 0 :(得分:0)
如果你在PL / SQL中调用select,你通常会用程序中的结果来计算。你有两种方式:
Select ... into ... from ...
如果你想选择一行。
或者将游标声明为select并循环遍历它。
但我想,你想要一个存储过程,它将结果计算为表。
似乎你想做类似
的事情SELECT * FROM MyProcedure(12345);
所以你可能应该看看oracle procedure returning table of custom data type record