Neil
Neil

Reputation: 301

sqldeveloper - DBMS_OUTPUT.PUT_LINE() Doesn't Work

I am trying to print the value passed to the DBMS_OUTPUT.PUT_LINE() function to the DBMS_OUTPUT screen in SQL Developer. No matter what I pass to the function, nothing gets printed in the output window.

I have turned on the DBMS Output window and even connected with an available connection. But on running the following script, only "PL/SQL procedure successfully completed" gets printed in the Script Output window, nothing in the Dbms Output window.

Also I have set the buffer size to 30000, which I guess is enough for printing the string 'test'. Running the command set serveroutput on also didn't work.

Cannot get to print!

When I try the same script in SQLPlus in the command prompt, it works fine and prints 'test' before printing "PL/SQL procedure successfully completed".

Kindly help. Thanks.

Upvotes: 2

Views: 18036

Answers (3)

S_intg
S_intg

Reputation: 332

I add this answer to help others if they come across this S.O question.

I struggled also with printing DBMS_OUTPUT on SQL Developer so I put this helpful link that I found explaining very well how the mechanism works

https://www.thatjeffsmith.com/archive/2012/03/dbms_output-in-sql-developer/

Upvotes: 1

Neil
Neil

Reputation: 301

Upon going through the Oracle community forums, I learned that SQL Developer 17.x which I am using does not provide support to Oracle 10g.

Older version of the SQL Developer 4.x will support Oracle 10g and retrieve DBMS_OUTPUT buffer to display it on the screen.

Since I only had a small database set up for my homework and did not want to downgrade to an older SQL Developer, I upgraded to Oracle 11g XE and it worked. All input given to DBMS_OUTPUT.PUT_LINE() procedure now appears in the Dbms Output window.

Upvotes: 12

Littlefoot
Littlefoot

Reputation: 142715

The last pane on your screen is "Dbms Output". Click the green "+" sign in its toolbar, and then execute the BEGIN-END block again.

Upvotes: 4

Related Questions