programing

PLSQL Anonymous 블록이 완료되면 출력이 없는 이유는 무엇입니까?

testmans 2023. 6. 19. 21:18
반응형

PLSQL Anonymous 블록이 완료되면 출력이 없는 이유는 무엇입니까?

저는 이제 막 PL/SQL에 들어갔고, 다음 코드를 실행하려고 시도했고, 익명 블록이 완성되고 있지만, Testing 출력을 받아야 할 것 같습니다.내가 뭘 잘못하고 있는지 아는 사람?

DECLARE
   message varchar2(20) := 'Testing output';
BEGIN
   dbms_output.put_line(message);
END;
/

DBMS_OUTPUT 보기는 프로그램에 따라 다릅니다.

SQL*Plus 및 Oracle SQL 개발자

달려.SET SERVEROUTPUT ON;먼저, SQL*Plus 또는 Oracle SQL Developer의 최신 버전에 필요한 것은 이것뿐입니다.

SET SERVEROUTPUT ON;
begin
    dbms_output.put_line('Testing output');
end;
/

PL/SQL 개발자

출력이 자동으로 감지되어 "출력" 탭에 표시됩니다.

예, Oracle SQL Developer에 다음과 같은 문구를 입력합니다.

SET SERVEROUTPUT ON;

당신의 직전에DECLARE키워드와 이것은 작동해야 합니다.

찾을 수 없었습니다.View -> DBMS Output버전 1.5.5를 사용하고 있습니다.

예. SQL Developer에서 출력을 확인할 수 있습니다.

->보기->Dbms 출력을 클릭한 후 Dbms 출력 창에서 + 기호를 클릭합니다.이제 절차를 실행하고 출력을 볼 수 있습니다.

"다음 진술은 가능한 해결책을 제공할 것입니다. 이것을 시도해 보십시오.

SET SERVEROUTPUT ON;

그러면 이 코드를 실행하면 다음과 같은 출력이 표시됩니다.

declare
a integer :=10;
b integer :=20;
c integer;
f real;
begin
c := a+b;
dbms_output.put_line('value of c: ' || c);
f := 70.0/3.0;
dbms_output.put_line('value of f: ' || f);

끝; /

코드는 다음과 같은 출력을 제공합니다.

c의 값: 30 f의 값: 23.33333333333333333333333333333333333333

PL/SQL 프로시저가 성공적으로 완료되었습니다.

네, 맞습니다.이 블록 전에 다음을 사용해야 합니다.

SET SERVEROUTPUT ON

그러면 메시지가 창에 표시됩니다.

그렇지 않으면 SQL Developer에서 확인할 수 있습니다.select "View" -> "DBMS Output".
그리고.PLSQL developer의 밑에OutPut우리는 메시지를 확인할 수 있습니다.

"EXECUTE;"를 입력하여 절차를 실행하는 동안 "익명 블록 완료"가 되면 아래 명령을 실행하고 다시 절차를 실행합니다. 명령은 다음과 같습니다.

서버 출력 설정;

**SET SERVEROUTPUT ON;**
DECLARE
   a INTEGER :=10;
   b INTEGER :=20;
   c float ;
   d real ;

BEGIN
   c :=a+b;
   dbms_output.put_line('the value of C is :'|| c);
   d := 70.0/3.3;
   dbms_output.put_line('the value of d is:'|| d);
END;

그러면 출력이 표시됩니다.

the value of C is: 30
the value of d is: 21.21212121212121212121212121212121212121

언급URL : https://stackoverflow.com/questions/14803195/why-no-output-when-plsql-anonymous-block-completes

반응형