2010-05-10 2 views
0

내가 간단한 오라클 저장 프로 시저를 작성하는 것을 시도하고 점점 저장 :간단한 오라클 프로 시저가 잘못된 개체 오류

CREATE OR REPLACE PROCEDURE act.skeleton 
IS 
DECLARE 
    v_rowCount NUMBER; 
BEGIN 
    SELECT COUNT(1) INTO v_rowCount FROM ex.emp; 
    DBMS_OUTPUT.PUT_LINE(v_rowCount); 
END; 

그러나, 나는 &은 PL/SQL 개발자의 명령 창에서 execute act.skeleton을 실행하여 프로 시저를 실행하려고 할 때, I

ORA-06550: line 1, column 11: 
PLS-00905: object ACT.SKELETON is invalid 
ORA-06550: line 1, column 7: 
PL/SQL: Statement ignored 

나는이 프로 시저 문 &을 만들 수는 출력이 표시되고 성공적으로 실행하지 않고 그냥 코드를 실행하려고 : 다음과 같은 오류 메시지가 나타납니다. 나는 모두 CREATE OR REPLACE PROCEDURE IS & CREATE OR REPLACE PROCEDURE AS 옵션을 시도했지만 여전히 동일한 오류가 발생합니다.

시도하거나 실행할 때 프로 시저의 승인 또는 표시와 관련이 있는지 또는 act.skeleton 개체가 유효하지 않은 원인인지 확실하지 않습니다. 나는 오류가 의미하는 것을 보았습니다. & 이것은 대개 프로 시저에서 컴파일 오류를 나타내는 것으로 보이지만 코드를 실행하여 프로 시저 선언을 실행할 수 없기 때문에 선언 부분이 범인이라고 추측합니다. 난 그냥이 원인이 나는 사람이

감사합니다 거기에 좀 더 빛을 버리고 올바른 방향으로 날 지점 수있을 것으로 기대하고 있었는지 알아낼 수있을만큼 모르는

인 Ashish

기타 상세 사항 :

Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi 
PL/SQL Release 10.2.0.4.0 - Production 

답변

2

저장 프로 시저 선언에 DECLARE 키워드를 사용하지 마십시오. 그것을 제거하면 컴파일해야합니다.

+0

이와 같이 -> 생성 또는 대체 절차 act.skeleton IS v_rowCount NUMBER; 시작 개수 (1)에서 v_rowCount로 ex.emp; DBMS_OUTPUT.PUT_LINE (v_rowCount); END; – ukanth

+0

감사합니다. @Charles & @UK! 그게 효과가 있었어! – tundal45