How oracle (via sql / plus) defines the encoding used to calculate sql script

I would like to get some details about how the oracle (via sql / plus) defines the encoding used to calculate the sql script.

My database is configured as follows:

select VALUE from nls_database_parameters where parameter='NLS_CHARACTERSET';
VALUE
------
WE8ISO8859P15

The problem is that I read here http://www.orafaq.com/wiki/NLS that session parameters may take precedence over database parameters.

Does this mean that database encoding is overridden by the one defined in the NLS_LANG environment variable of the user who is executing the script?

Apparently, it is not possible to change the encoding in a script using the alter session statement.

I ask this question since I already had a problem with damaged characters with a production script executed by a subcontractor in India. I really don't know if this was because he did something wrong with my file (e.g. copy / paste in sql gui client), or if it was due to his environment.

To summarize my real problem, everything will be OK if

  • User configured with UTF8 encoding

  • My sql file is encoded in UTF8

  • My database is in WE8ISO8859P15

Thanks in advance for your answers.

+4
source share
1 answer

, . Oracle , NLS_LANG .

, UTF8 Unicode 3.1 . AL32UTF8, Unicode.

+2

All Articles