質問するログイン新規登録

回答編集履歴

2

細かい語句の修正

2019/07/20 05:21

投稿

atata0319
atata0319

スコア881

answer CHANGED
@@ -12,7 +12,7 @@
12
12
 
13
13
  > 書き換わってしまわないようにするにはどうすればよいか?
14
14
 
15
- 使用するミドルウェアによって対応が異なります。Windows で OCI を使用しているのであれば、環境変数とレジストリに設定されている NLS_LANG を削除すればバ側の設定が使用されるようになります。
15
+ 使用するミドルウェアによって対応が異なります。Windows で OCI を使用しているのであれば、環境変数とレジストリに設定されている NLS_LANG を削除すれば初期化パラメの設定が使用されるようになります。
16
16
 
17
17
  ただし、これを実施する場合、接続する際のキャラクタセットを指定できないため、キャラクタセットを変更しなければならない場合には採用できません。また、NLS_LANG に依存する Oracle ツールがいくつかあるため、削除するのは現実的ではないと思います。
18
18
 

1

サーバログイン時の話を追記

2019/07/20 05:21

投稿

atata0319
atata0319

スコア881

answer CHANGED
@@ -7,7 +7,7 @@
7
7
 
8
8
  > なぜNLS_DATE_FORMATが書き換わるのか?
9
9
 
10
- クライアントの設定によって上書きされるためです。KOZ6.0 さんが述べられている通りクライアントで設定している NLS_LANG から導出される NLS_TERRITORY によって上書きされます。
10
+ クライアントの設定によって上書きされるためです。KOZ6.0 さんが述べられている通りクライアントで設定している NLS_LANG から導出される NLS_TERRITORY によって上書きされます。サーバにログインして接続しているということですが、サーバにログインしても SQL*Plus 自体は Oracle クライアントソフトですので、サーバ OS のレジストリまたは環境変数に設定されている Oracle クライアントの設定を使用して上書きされています。
11
11
 
12
12
 
13
13
  > 書き換わってしまわないようにするにはどうすればよいか?