次の8つの変数がSQL*Plusのインストール中に定義されます。これらの変数とユーザー定義変数の違いは、事前定義値を持つ点のみです。
表12-3 SQL*Plusのインストール時に事前定義される変数
変数名 | 内容 |
---|---|
可能な宛先への接続に使用される接続識別子。 |
|
現在の日付、またはユーザー定義の固定文字列。 |
|
インストールされたOracle Databaseの現行のバージョン。 |
|
インストールされたOracle Databaseの完全なリリース番号。 |
|
現在の接続での権限レベル。 |
|
インストールされたSQL*Plusコンポーネントの完全なリリース番号。 |
|
接続に使用されるユーザー名。 |
_CONNECT_IDENTIFIER
接続識別子のINSTANCE_NAME、SERVICE_NAME
またはORACLE_SID
が含まれます。接続の際にユーザーが接続識別子を指定しない場合、_CONNECT_IDENTIFIER
にはORACLE_SID
が含まれます。
_DATE
動的変数としての現在の日付、または固定文字列が含まれます。現行の日付はデフォルトで、NLS_DATE_FORMATの値を使用して書式設定されます。
_DATEは標準の置換変数として使用できるため、ユーザーはこれをTTITLEに含めることができます。_DATEが動的で、TTITLEで使用される場合は、すべての標準の変数のセマンティクスを持ちます。_DATEが値ではなくアンパサンドとともに使用される場合、TTITLEコマンドが実行される時間に設定されます。アンパサンドを接頭辞に使用しない場合は、ページごとに再度評価されます。TTITLEでの_DATE付きの詳細なレポート、または&_DATEへの複数の参照を持つ詳細なレポートでは、変数の出現ごとに異なる時間が表示されます。
TTITLEで_DATEを使用するユーザーは、ほとんどが、&_DATEのようにアンパサンドを使用します。そのため、レポートの各ページは同一のタイムスタンプを持ちます。これは、現在の日付の書式に秒のコンポーネントが含まれる場合、特に正確です。
DEFINE(引数なし)、または&_DATEを使用する間接参照では、現在の日付が指定されます。
_DATEの値はUNDEFINEDにすることも、または明示的にDEFINE _DATEを使用して固定文字列に設定することもできます。
デフォルトの動的な日付動作を再度有効にするには、次のように指定します。
DEFINE _DATE = "" (an empty string)
_DATEを使用すると、時刻の値をご使用のSQL*Plusプロンプトに含めることができます。
_EDITOR
EDITコマンドで使用されるデフォルトのエディタを指定します。
Windowsオペレーティング・システムへのSQL*Plusのインストールの場合は、インストール時にメモ帳に設定されます。UNIXオペレーティング・システムの場合は、UNIX環境変数の値、EDITOR(存在する場合)に設定されます。存在しない場合はEdに設定されます。
デフォルトのテキスト・エディタの名前を保持するには、DEFINEコマンドを使用して_EDITORを再定義します。たとえば、EDITで使用するエディタをviとして定義するには、次のコマンドを入力します。
DEFINE _EDITOR = vi
_O_VERSION
インストールされたOracle Databaseの現行のバージョンが、次のような書式で含まれます。
Oracle Database 12c Release 12.1.0.0.0 - Production
_O_RELEASE
インストールされたOracle Databaseの完全なリリース番号が、次のような書式で含まれます。
1201000100
_PRIVILEGE
現在の接続での権限レベルを示す値が含まれます。次のいずれかの値です。
AS SYSASM
AS SYSBACKUP
AS SYSDBA
AS SYSDG
AS SYSOPER
AS SYSRAC
空の文字列(通常のユーザー接続または接続しない場合)
AS SYSASM、AS SYSBACKUP、AS SYSDBA、AS SYSDGおよびAS SYSOPERは、データベース管理者レベルの権限です。
AS SYSASM、AS SYSBACKUP、AS SYSDBA、AS SYSDG、AS SYSOPERおよびAS SYSRACは、データベース管理者レベルの権限です。
関連項目:
AS SYSDBAおよびAS SYSOPER権限については、『Oracle Database SQL言語リファレンス』を参照してください。
_SQLPLUS_RELEASE
インストールされたSQL*Plusコンポーネントの完全なリリース番号が、次のような書式で含まれます。
1201000100
_USER
現在接続しているユーザーの名前が含まれます。
DEFINEコマンドを使用すると、これらの変数の各値を参照できます。
これらの変数は、他の置換変数と同様にアクセスおよび再定義できます。これらの変数はTTITLE、「&」置換変数、またはSQL*Plusコマンドライン・プロンプトで使用できます。
DEFINEコマンドを使用すると、他のDEFINE定義を参照する場合と同じ方法で、これらの8つの事前定義変数の定義を参照できます。また、DEFINEコマンドを使用してこれらの値を再定義したり、UNDEFINEコマンドを使用してこれらの定義を削除し、使用不可にすることもできます。
特定の変数の定義を表示するには、次のように入力します。
DEFINE variable
variableには、定義を表示する置換変数の名前を指定します。
すべての事前定義変数およびユーザー定義変数の定義を表示するには、次のように入力します。
DEFINE
すべての事前定義変数およびユーザー定義変数の定義が表示されます。
UNDEFINEコマンドを使用して、置換変数の定義を削除し、使用不可にできます。