Sha*_*ail 1 sql oracle plsql syntax-error
我刚开始学习PL/SQL,我不知道如何创建一个过程.逻辑似乎是对的,但我认为第一行有一些语法错误.这是我的代码: -
CREATE OR REPLACE PROCEDURE ReverseOf(input IN varchar2(50)) IS
DECLARE
reverse varchar2(50);
BEGIN
FOR i in reverse 1..length(input) LOOP
reverse := reverse||''||substr(input, i, 1);
END LOOP;
dbms_output.put_line(reverse);
END;
/
Run Code Online (Sandbox Code Playgroud)
两件事 - 你不应该在procedure/function的参数列表中指定数据类型大小,而你不需要 DECLARE关键字.试试这个:
CREATE OR REPLACE PROCEDURE ReverseOf(input IN varchar2) IS
rev varchar2(50):='';
BEGIN
FOR i in reverse 1..length(input) LOOP
rev := rev||substr(input, i, 1);
END LOOP;
dbms_output.put_line(rev);
END;
Run Code Online (Sandbox Code Playgroud)