This content has been marked as final. Show 23 replies
There are several serious bugs with DBMS_OUTPUT in sqldev.
To track down if you're hitting one of them, first, make yourself a working case on your Express Edition (start sqldev, open script, enable output, etc.). Then follow the exact same steps on the company's DB. Make sure the first step is starting sqldev.
Several serious bugs?
The only open DBMS_OUPUT bug I see is a recent entry where not all output lines are displayed to the DBMS_OUTPUT display tab. However if you re-run your query they do. I have experienced the sporadic nature of commands displayed to the tab and so typically rerun my queries. This is what I recommend in this situation.
However, I would like to review the serious bugs you mention.
Sorry, but this really pisses me off.
This is not the first time (and I'm pretty sure not the last one either) we're having this conversation. Sorry if I get rude.
We are many users on this forum trying to help you improve your product reporting problems. But only in a few cases someone from the team reacts.
On other occasions, you said that only happens if a new problem is reported deep in another thread. OK, I can understand that things get lost, but if you would read what people write, you would catch those anyway (like I and so many others do).
I have a fairly occupied working day, but manage to follow the forum and try to help out others. It's your program, your forum, you're getting paid to make this work!
As I said on other occasions, if we don't have access to the bug database (just a few items on Metalink), at least give us confirmation of the issues here on the forum. But it seems you only take interest in some very specific ones. Granted, once you do, you follow up very correctly.
But even after bumping threads without response, even after putting BUG in the subject, even after putting the subject in bold, you still manage to ignore them completely.
Given that on top all that is free help and testing, I really don't know what kind of management that is.
Sheez, after that, I really don't want to look them up again. The forum has a perfectly working search function, I think you're pretty capable of using it yourself, aren't you? That's what I would have to do and did on so many other occasions. Else keep an eye out until someone bumps the threads again.
Again sorry for being rude, but that's the way I feel.
For him, it works on 1 of 2 databases.
I regularly miss output too. To get it working again, I often have to disable, then enable output again, multiple times. Sometimes I even get unrecoverable crashes manipulating the button.
As I'm pretty sure it always works the first time, I suggested to restart before trying on the second one.
I don't tend to run things as scripts - I normally just run statements, but didn't the DBMS output get put on the Script Output tab when running scripts in at least one of the older versions of SQL Developer? In 18.104.22.168.12, when running Ben's statement as a script I get the "anonymous block completed" in the Script Output and the desired output on the DBMS Output tab.
One possible cause is that the Enable DBMS Output button for new windows remembers the state of earlier windows, even for different connections. For example, I connect to DB A and Enable DBMS Output in the SQL Worksheet for DB A - DBMS Output works fine in the DBMS Output tab. If I then connect to DB B I get a new SQL Worksheet for DB B with the Enable DBMS Output button showing as enabled but it isn't really enabled - you need to "disable" it and then re-enable it before the DBMS Output tab works.
Sue - this is also an example of why we feel frustrated at times. This sticky Enable DBMS Output button problem has been in every version of SQL Developer that I have used (which is back to almost the first pre-release version) and I can find an 20 month old post (Enable DBMS Output and multiple worksheets/connections where the SQL Dev team have responded that it will get looked at, but it has never been fixed.
Did'nt expect so much passion.
Just to clarify my problem, I am using my local machine XE on XP to develop my database as explained above and I have no problems getting the product to ouput the script in the output window, using either SQL Developer or SQL*Plus.
The problem in SQL Developer ...
Using our company database here I will call server-test-2.dev and using SQL Developer on my machine the scripts output to the window no problem.
We have another company database here and I will call it server-test-2.tst and using SQL Developer on my local machine the scripts will not show there output other than "anonymous block completed".
The problem in SQL*Plus ...
Now I didnt know at the time that the issue might be related but I posted another message at the following address SQL*Plus output for SQL*Plus.
I am having the same issue with SQL*Plus. I get output spooled to a file on server-test-2.dev,but when I try to run my scripts against server-test-2.tst I only get the following 'PL/SQL procedure successfully completed.', but when I don't use a PL/SQL procedure and just use a straight SELECT or DESCRIBE statement, this gets spooled to the file as correct output.
So anyway I am flumoxed as to what the problem is.
Message was edited by:
I think we need a bit more clarity.
There is a difference between output from dbms_output and the direct results of a query.
Direct query results go to the script output window and dbms_output goes to the dbms_output window, provided you have enabled serveroutput. In SQL*Plus you will only get dbms_output showing if you add "set serveroutput on" at the top of your file.
Using our company database here I will call server-test-2.dev and using SQL Developer on my machine the scripts output to the window no problem.Which window? Are you saying that the dbms_output goes to the "Script output" window? That is not normal behaviour in the current version.
Are you saying that the dbms_output goes to the "Script output" window? That is not
normal behaviour in the current version.
Suppose the following script:
I run the script using F5 key and I can see all its output in Script Output tab and nothing in DBMS Output tab (SQLDev 22.214.171.124.98). And I believe this is normal behaviour. As I can understand you, you expect Text line 1 and Text line 3 in DBMS Output tab and Text line 2 and Text line 4 in Script Output tab. Or am I wrong?
begin dbms_output.put_line('Text line 1'); end; / select 'Text line 2' from dual / begin dbms_output.put_line('Text line 3'); end; / select 'Text line 4' from dual /
And I get:
anonymous block completed
Text line 1
Text line 2
1 rows selected
anonymous block completed
Text line 3
Text line 4
1 rows selected
Well, I believe you have different version of SQLDev. But what output should be considered as correct? Yours or mine?
I get the same as Matt except that I get
begin dbms_output.put_line('Text line 1'); end; succeeded.instead of "anonymous block completed".
According to various threads here, and the documentation, Matt's is the correct output. It is open to debate whether that is the right thing to do. I tend not to mix queries and dbms_output so the current arrangement suits me. YMMV.