【发布时间】:2017-04-05 03:41:09
【问题描述】:
我是 PL/SQL 新手。任何人都可以帮助修复我的编译错误吗?非常感谢您的帮助。另外,在我想调用这个程序来检查并添加一个新用户之后。
create or replace procedure CheckAddUser ( userid in varchar2(20))
as
declare vartmp number;
begin
SELECT nvl((SELECT distinct 1 FROM crm_admin.LTY_USER_STORE WHERE usr_nm = userid ), 0) INTO :varTmp FROM dual;
IF (:varTmp = 0) THEN
dbms_output.put_line('the user ' || ':userid' || ' does not exist');
elsif (:varTmp = 1) THEN
dbms_output.put_line('the user ' || ':userid' || ' already exist');
End if;
end;
【问题讨论】:
-
您看到的编译错误是什么?
-
@Chetan 在 sqldeveloper 中,我得到了几个: 1. 错误(2,44):PLS-00103:在期望以下之一时遇到符号“(”::=。), @ % 默认字符符号 ":=" 被替换为 "(" 以继续。 2. 错误 (4,1): PLS-00103: 在期望以下之一时遇到符号 "DECLARE": begin function pragma procedure subtype type
当前光标删除存在先前的外部语言符号“begin”被替换为“DECLARE”以继续。