SQL*Plusでtnsnames.oraを使用してOracle Databaseに接続して作業する際、接続しているネットサービス名を確認したい場合があると思います。
今回はSQL*Plusのプロンプトにネットサービス名を表示させる方法を紹介します。
SQL*Plusプロンプト上でネットサービス名を表示させる方法
※ネットサービス名、tnsnames.oraについての説明は、以下の記事を参照してください。
まずはSQL*Plusからネットサービス名を使って、通常通り接続します。
[oracle@ol77 ~]$ sqlplus dekiruengineer@HOGEPDB
SQL*Plus: Release 19.0.0.0.0 - Production on Thu Oct 22 15:55:53 2020
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Enter password:
Last Successful login time: Thu Oct 22 2020 13:33:56 +09:00
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL>
接続した際のデフォルトのSQLプロンプトは SQL> となっていますが、ここで set sqlprompt “_CONNECT_IDENTIFIER>” を入力すると以下のように先頭にネットサービス名が表示されるようになります。
SQL> set sqlprompt "_CONNECT_IDENTIFIER SQL>"
HOGEPDB SQL>
HOGEPDB SQL>
HOGEPDB SQL>
さらにユーザー名も表示に含めたい場合は、以下のコマンドを実行することでユーザー名とネットサービス名を合わせて表示できます。
set sqlprompt “_USER@_CONNECT_IDENTIFIER SQL> “
※SQL*Plusプロンプト上にユーザー名を表示する方法は以下を参照してください。
HOGEPDB SQL> set sqlprompt "_USER@_CONNECT_IDENTIFIER SQL> "
DEKIRUENGINEER@_CONNECT_IDENTIFIER SQL>
DEKIRUENGINEER@_CONNECT_IDENTIFIER SQL>
DEKIRUENGINEER@_CONNECT_IDENTIFIER SQL>
SQL*Plusのプロンプトにユーザー名やネットサービス名を表示するのは、作業ミスを減らすために有用な方法だと思いますので、ぜひ使ってみてください。