PL/SQL调试出现的错误
Compilation errors for PROCEDURE JTJ.CARINFO
#13#10Error: PLS-00103: 出现符号 "NUMBER"在需要下列之一时:
:=.(@%;
符号 ":=" 被替换为 "NUMBER" 后继续。
Line: 5
Text: rCnt number;
#13#10Error: PLS-00103: 出现符号 "IF"在需要下列之一时:
.(*@%&-+;/atformodrem
<an exponent (**)>andorgrouphavingintersectminusorderstart
unionwhereconnect||
符号 ";" 被替换为 "IF" 后继续。
Line: 7
Text: if( rCnt >0) then
#13#10Error: PLS-00103: 出现符号 "ELSE"在需要下列之一时:
.(*@%&-+;/atmodremreturn
returning<an exponent (**)>andor||
符号 ";" 被替换为 "ELSE" 后继续。
Line: 11
Text: else
#13#10Error: PLS-00103: 出现符号 "END"在需要下列之一时:
if
Line: 15
Text: END
Compilation errors for PROCEDURE JTJ.CARINFO
#13#10Error: PLS-00103: 出现符号 "NUMBER"在需要下列之一时:
:=.(@%;
符号 ":=" 被替换为 "NUMBER" 后继续。
Line: 5
Text: rCnt number;
#13#10Error: PLS-00103: 出现符号 "IF"在需要下列之一时:
.(*@%&-+;/atformodrem
<an exponent (**)>andorgrouphavingintersectminusorderstart
unionwhereconnect||
符号 ";" 被替换为 "IF" 后继续。
Line: 7
Text: if( rCnt >0) then
#13#10Error: PLS-00103: 出现符号 "ELSE"在需要下列之一时:
.(*@%&-+;/atmodremreturn
returning<an exponent (**)>andor||
符号 ";" 被替换为 "ELSE" 后继续。
Line: 11
Text: else
#13#10Error: PLS-00103: 出现符号 "END"在需要下列之一时:
if
Line: 15
Text: END
CARINFO (1,2,3);
edn;
(PCARID IN NUMBER,PCAR_CLASS IN NUMBER,PCAR_MARK IN NUMBER)
AS
rCnt number(20);
BEGIN
--rCnt number;
select count(1)into rCnt from CAR_ZHJ where CARID=PCARID;
if( rCnt >0) then
UPDATE CAR_ZHJ
SET CAR_CLASS=PCAR_MARK,CAR_MARK=PCAR_MARK
where CARID=PCARID;
else
INSERT INTO CAR_ZHJ(CARID,CAR_CLASS,CAR_MARK)
VALUES(PCARID,PCAR_CLASS,PCAR_MARK);
end if;END CARINFO;
if用法如下if ... then
...
elseif ... then
...
else
...
end if;
(PCARID IN NUMBER,PCAR_CLASS IN NUMBER,PCAR_MARK IN NUMBER)
AS
BEGIN
rCnt number;
select count(1)into rCnt from CAR_ZHJ where CARID=PCARID;
if( rCnt >0) then
UPDATE CAR_ZHJ;
SET CAR_CLASS=PCAR_MARK AND CAR_MARK=PCAR_MARK;
where CARID=PCARID;
else
INSERT INTO CAR_ZHJ(CARID,CAR_CLASS,CAR_MARK);
VALUES(PCARID,PCAR_CLASS,PCAR_MARK);;
end if;
END CARINFO;
执行存储过程不用executebegin
CARINFO (1,2,3);
edn;--
不好意思回答错了
sqlplus中execute 存储过程是可以的