Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: PLS-00201 identifier 'SYS.V_$SESSION' must be declared

Re: PLS-00201 identifier 'SYS.V_$SESSION' must be declared

From: Keith Boulton <kboulton_at_ntlunspam-world.com>
Date: Sat, 12 Jan 2002 19:17:29 -0000
Message-ID: <pV%%7.3431$WQ1.655460@news6-win.server.ntlworld.com>

> Most people in the Oracle related newsgroup appear not to look up the
> error message at all, but just post them.
You're getting a bit tectchy in your old age!

On a different subject, my impression is that the general quality of requests and responses to the oracle newgroups has risen consistently over the years - thanks to all of you.

> Your changes to the PLS-00201 message are simply incorrect, as there
> are various methods to avoid this problem, and the remark 'accessible
> directly' may well not apply at all.

But what is the commonest cause? Although to be fair, I did look up the error message and it does give the possible reason.

> Ever looked at Microsux error messages like
> 'The system is unstable'?

The fact that other vendors are as bad or worse is not really relevant. In my experience, there is a general issue with error messages that they are not based on the needs of the person who will receive the message, but rather on the context of the programmer who coded the error message when it was added.

> I don't agree with a general remark 'poor choice of error message
> seems to apply throughout'

But it does. In general, the error message is a simple text which doesn't give the context required e.g.

ORA-00001 unique constraint (string.string) violated At least we now get the constraint name, but why not give the columns and values involved:

    Unique constraint <constraint name> - <tablename>( <column>, <column> ... ) violated with values( <value>, <value>...)

ORA-00054 resource busy and acquire with NOWAIT specified Which resource?

ORA-00210 cannot open the specified controlfile which?

ORA-00902 invalid datatype
what?

ORA-00903 invalid table name
what invalid table name

ORA-00904 invalid column name

ORA-00918 column ambiguously defined
which one?

ORA-00932 inconsistent datatypes
which columns or literal values are involved? Especially given two other reasons why this error may occur:
1. An attempt was made to perform an operation on a database object (such as a table or view) that is not intended for normal use. For example, system tables cannot be modified by a user. Note that on rare occasions this error occurs because a misspelled object name matched a restricted object's name. 2 An attempt was made to use an undocumented view.

I could go on.

> In the particular example you mention you can copy and paste the
> affected statement to a sql*plus window and get the *exact* location
> of the error.

Which isn't helpful if the error has been trapped as an exception in a pl/sql block containing more than one statement, and in any case, given a reasonable error text I should not need to cut and paste code into other environments.

> I agree there are people who think that is asked too much of them.
I agree, after all a simple "error occurred" is all that is really required. People can work out the error from that.

> Of course, there is always the option of addressing your concerns with
> Oracle,

I would if I could.

> or alternatively choose a database product which doesn't have
> this problem.

Unfortunately, like most people, I have as much freedom to choose my database as I do the desktop operating system I must work with.

And I suspect the others would be the same if only that it is clear that quality doesn't sell. Received on Sat Jan 12 2002 - 13:17:29 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US