sql >> Database teknologi >  >> RDS >> Oracle

Bufres dbms_output.put() anderledes end dbms_output.put_line()?

Her er et eksempel, der viser den adfærd, du ser:

SQL> exec dbms_output.put_line('hello')
hello

PL/SQL procedure successfully completed.

SQL> exec dbms_output.put('hello again')

PL/SQL procedure successfully completed.

SQL> exec dbms_output.put(' and again')

PL/SQL procedure successfully completed.

SQL> exec dbms_output.new_line
hello again and again

PL/SQL procedure successfully completed.

dokumentationen siger "SQL*Plus kalder GET_LINES efter udstedelse af en SQL-sætning eller anonyme PL/SQL-kald."

Og procedure GET_LINES siger "Denne procedure henter en række linjer fra bufferen."

Med PUT har du ikke afsluttet din linje endnu. Og så udskrives den ikke.

NEW_LINE-proceduren nævner også dette:"Denne procedure sætter en end-of-line-markør. GET_LINE-proceduren og GET_LINES-proceduren returnerer "linjer" som afgrænset af "nye linjer". Hvert kald til PUT_LINE-proceduren eller NEW_LINE-proceduren genererer en linje der returneres af GET_LINE(S)."

Med venlig hilsen
Rob.




  1. Hvordan behandler postgis koordinater sendt med forskellige SRID

  2. Er dette en sikker metode til at indsætte formulardata i en MySQL-database?

  3. beregn summen af ​​alle tallene i en kolonne

  4. Sende adgangskoder over nettet