About your note on SQL*Plus FAQ: Note : This method only applies executing it within an active database connection because use DUAL table. This is wrong as the follolling execution shows it:
SQL> select open_mode from v$database; OPEN_MODE -------------------- MOUNTED 1 row selected. SQL> @c:\michel v1 1="v1" 2="def2" 3="def3"
DUAL "table" is available when the database is not open as it is also hard coded in oracle binary.
Hi. however you still connected to an active database session even on MOUNTED mode. My point is that if you cannot access to DUAL table the described method does not work, and is common to have sql scripts to connect, so they need to validate its parameters before connection and have DUAL table availiable.
- What do you call "active" database?
- What do you mean by "is common to have sql scripts to connect"?
- Show an example of what you have to do and cannot be done.
- If you are in nomount or idle instance state, there is no database.
- If there is no database then what is the point to execute a script?