我正在尝试将sql存储过程转换为oracle。这是一个非常简单的程序。它只是从表中返回一个id列表,这在sql中很容易做到。
SQL
CREATE PROCEDURE [dbo].[tspInstalledLanguages]
AS
BEGIN
SELECT language_id from languages
END
对于oracle来说,我是一个完全的新手,而且我已经知道它并不像这样直接。
我尝试了以下内容:
的Oracle
CREATE OR REPLACE PROCEDURE tspInstalledLanguages
AS
BEGIN
SELECT LANGUAGE_ID FROM LANGUAGES;
END;
没有运气。
我收到一条消息,表示期待select into
答案 0 :(得分:1)
It is.
例如:
DECLARE
v_authName author.author_last_name%type;
BEGIN
SELECT author_last_name
INTO v_authName
FROM author
WHERE author_key = 'A103';
dbms_output.put_line('Name: '||v_authName);
END;
/
所以使用你的代码:
CREATE OR REPLACE PROCEDURE tspInstalledLanguages
IS
v_language NUMBER;
BEGIN
SELECT LANGUAGE_ID
INTO v_language
FROM LANGUAGES;
dbms_output.put_line(v_language);
END;
/