現在のセッションの実行時パラメーターを設定します。ALTER SESSION は、現在のセッションで使用される値のみを変更します。
構文
ALTER SESSION SET name = valueパラメーター
| パラメーター | 説明 |
|---|---|
name | 設定する実行時パラメーターの名前です。 |
value | パラメーターの新しい値です。 |
サポートされているパラメーター
PolarDB for PostgreSQL (Compatible with Oracle) は、次の ALTER SESSION パラメーターをサポートしています。パラメーターは、ランタイム動作を変更するものと、Oracle 構文の互換性のために受け入れられるものの効果がないものの 2 つのカテゴリに分類されます。
有効なパラメーター
| パラメーター | 型 | 有効な値 | デフォルト | 説明 |
|---|---|---|---|---|
NLS_DATE_FORMAT | 文字列 | — | — | 日付と時刻の値の表示、および曖昧なデータ入力値の解釈に使用する日付フォーマットを設定します。PostgreSQL の datestyle パラメーターと同じ効果があります。 |
NLS_LANGUAGE | 文字列 | — | — | システムメッセージの言語を設定します。PostgreSQL の lc_messages パラメーターと同じ効果があります。値は、Oracle の言語名形式ではなく、PostgreSQL のロケール形式 (例: en_US.UTF-8) を使用する必要があります。 |
OPTIMIZER_MODE | 文字列 | ALL_ROWS, CHOOSE, FIRST_ROWS, FIRST_ROWS_10, FIRST_ROWS_100, FIRST_ROWS_1000 | CHOOSE | デフォルトのクエリオプティマイザーモードを設定します。 |
構文互換性パラメーター (効果なし)
以下のパラメーターは、Oracle 構文の互換性を維持するために受け入れられますが、PolarDB for PostgreSQL (Compatible with Oracle) のランタイム動作は変更しません。
| パラメーター | 型 | 有効な値 | デフォルト |
|---|---|---|---|
NLS_LENGTH_SEMANTICS | 文字列 | BYTE, CHAR | BYTE |
QUERY_REWRITE_ENABLED | 文字列 | TRUE, FALSE, FORCE | FALSE |
QUERY_REWRITE_INTEGRITY | 文字列 | ENFORCED, TRUSTED, STALE_TOLERATED | ENFORCED |
例
セッション言語を英語 (米国) に設定し、UTF-8 エンコーディングを使用します。
ALTER SESSION SET NLS_LANGUAGE = 'en_US.UTF-8';ロケール値 en_US.UTF-8 は、Oracle の言語名形式ではなく、PostgreSQL の形式を使用します。この形式は Oracle データベースと互換性がありません。日付の表示形式を日/月/年に設定します。
ALTER SESSION SET NLS_DATE_FORMAT = 'dd/mm/yyyy';