1. Navicat에서 새로운 SQL 쿼리 창을 생성하고 다음 저장 프로시저를 입력하세요.
이 저장 프로시저의 의미는 정수를 매개변수로 취하고 급여가 가장 높은 상위 소수(매개변수 값) 직원의 정보를 입력한다는 것입니다.
create or replace procedure my_p (v_n in number) is cursor csr is select * from emp order by sal DESC; i number :=0; begin for v_emp in csr loop i := i+1; dbms_output.put_line(v_emp.ENAME || '--' || v_emp.SAL); if i = v_n then exit; end if; end loop; end;
2. 위 코드를 선택하세요. --> "선택한 항목 실행"
관련 권장사항: "Navicat for mysql graphic tutorial"
3. 질문이 아닙니다. 문제가 있는 것은 우리(귀하의) 코드입니다.
그런 다음 이때 우리(자신의) 코드를 확인해야 합니다. 예를 들어 필드 이름이 dbms 출력의 문자열에 연결될 때 이중 수직 막대가 있는지, 필수 세미콜론이 추가되었는지 여부를 확인해야 합니다. 보통 이 시점에서 친구들의 문제는 기본적으로 90%는 해결됩니다.
4. 작동하지 않으면 다음 방법만 시도할 수 있습니다.
창 왼쪽에서 내 SCOTT 사용자와 같은 사용자를 클릭하세요.
그런 다음 EMP 테이블(작동해야 하는 테이블)을 두 번 클릭합니다. 구체적인 원리는 명확하지 않습니다. 하지만 직접 수행한 후에는 컴파일 오류가 없을 것입니다. Navicat이 데이터를 미리 로드해야 할까요?
5. 이 때 코드를 다시 실행하면 친구의 문제가 93.57% 해결됩니다.
팁:
a. 온라인에서 언급된 대문자 사용 문제를 시도해 보았으나 효과가 없었습니다. 그러나 Navicat 버전의 특수성을 배제할 수는 없습니다. 여기서는 Navicat12.1 버전을 사용하고 있습니다.
b. 나머지 6.43%의 문제는 다른 문제일 수 있습니다. 일반적으로 위의 방법을 따르면 기본적으로 해결됩니다.
c. 데이터베이스와 사용자를 선택하는 것을 잊지 마세요. 이로 인해 권한과 같은 문제가 발생합니다.
위 내용은 oracle 함수 스크립트를 실행할 때 navicat이 오류 24344를 보고하면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!