適用対象:SQL Server
この記事では、SQL Server Management Studio または Transact-SQL を使用して、SQL Server で user options サーバー構成オプションを構成する方法について説明します。
user options オプションは、すべてのユーザーに対するグローバルな既定値を指定します。 ユーザーの作業セッション中に、一連の既定のクエリ処理オプションが設定されます。
user options オプションを使用すると、SET オプションの既定値を変更できます (サーバーの既定の設定が適切でない場合)。
ユーザーは、これらの既定値を SET ステートメントでオーバーライドできます。 新しいログインに対して user options を動的に構成できます。
user options の設定を変更すると、新しいログイン セッションで新しい設定が使用されます。 現在のログイン セッションは影響を受けません。
推奨事項
次の表は、user options の構成値の一覧と説明です。 すべての構成値が他の構成値と両立するわけではありません。 たとえば、ANSI_NULL_DFLT_ON と ANSI_NULL_DFLT_OFF を同時に設定することはできません。
| 値 | 構成 | 説明 |
|---|---|---|
1 |
DISABLE_DEF_CNST_CHK |
中間制約チェックまたは遅延制約チェックを制御します。 |
2 |
IMPLICIT_TRANSACTIONS |
dblib ネットワーク ライブラリ接続の場合、ステートメントの実行時にトランザクションを暗黙的に開始するかどうかを制御します。
IMPLICIT_TRANSACTIONS 設定は、ODBC または OLEDB 接続には影響しません。 |
4 |
CURSOR_CLOSE_ON_COMMIT |
コミット実行後のカーソルの動作を制御します。 |
8 |
ANSI_WARNINGS |
集計警告の切り詰めと NULL を制御します。 |
16 |
ANSI_PADDING |
固定長変数の埋め込みを制御します。 |
32 |
ANSI_NULLS |
等価演算を使用する場合に NULL 処理を制御します。 |
64 |
ARITHABORT |
クエリ実行中にオーバーフローまたは 0 除算のエラーが発生した場合に、クエリを終了します。 |
128 |
ARITHIGNORE |
クエリ実行中にオーバーフローまたは 0 除算エラーが発生した場合に、NULL を返します。 |
256 |
QUOTED_IDENTIFIER |
式を評価するときに、単一引用符と二重引用符を区別します。 |
512 |
NOCOUNT |
各ステートメントの最後に返される、何行処理されたかを示すメッセージを表示しないようにします。 |
1024 |
ANSI_NULL_DFLT_ON |
ANSI 互換の NULL 値の許可属性を使用するようにセッションの動作を変更します。 新しい列で、NULL 値を許可するかどうかが明示的に定義されていない場合は、NULL 値を許可するように定義されます。 |
2048 |
ANSI_NULL_DFLT_OFF |
ANSI 互換の NULL 値の許可属性を使用しないようにセッションの動作を変更します。 新しい列で、NULL 値を許容するかどうかが明示的に定義されていない場合は、NULL 値が許可されません。 |
4096 |
CONCAT_NULL_YIELDS_NULL |
NULL 値を文字列と連結した場合に、NULL を返します。 |
8192 |
NUMERIC_ROUNDABORT |
式の精度が低下した場合にエラーを生成します。 |
16384 |
XACT_ABORT |
Transact-SQL ステートメントで実行時エラーが発生した場合、トランザクションをロールバックします。 |
user options のビット位置は、@@OPTIONS のビット位置と同じです。 接続にはそれぞれの構成環境を表す @@OPTIONS 関数があります。 SQL Server のインスタンスにログインすると、ユーザーは、現在の user options 値を @@OPTIONS に割り当てる既定の環境を受け取ります。
SET に対して user options ステートメントを実行すると、セッションの @@OPTIONS 関数の対応する値に影響します。 この設定の変更後に作成された接続は、すべて新しい値を受け取ります。
アクセス許可
パラメーターなしで、または最初のパラメーターだけを指定して sp_configure を実行する権限は、既定ですべてのユーザーに付与されます。 両方のパラメーターを指定して sp_configure を実行し構成オプションを変更したり RECONFIGURE ステートメントを実行したりするには、ALTER SETTINGS サーバーレベル権限がユーザーに付与されている必要があります。
ALTER SETTINGS 権限は、sysadmin 固定サーバー ロールと serveradmin 固定サーバー ロールでは暗黙のうちに付与されています。
SQL Server Management Studio の使用 [SQL Server]
オブジェクト エクスプローラーで、サーバーを右クリックし、[プロパティ] を選択します。
[接続] ノードを選択します。
[既定の接続オプション] ボックスで、1 つ以上の属性を選択し、すべての接続済みユーザーの既定のクエリ処理オプションを構成します。
既定では、ユーザー オプションは構成されていません。
Transact-SQL の使用
データベース エンジンに接続します。
標準バーから、 [新しいクエリ] を選択します。
次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] を選択します。 次の例は、sp_configure を使用して、
user optionsサーバー オプションの設定を変更するANSI_WARNINGSを構成する方法を示しています。USE master; GO EXECUTE sp_configure 'user options', 8; GO RECONFIGURE; GO
補足情報: user connections 構成オプションを構成した後
新しい設定は、サーバーを再起動しなくてもすぐに有効になります。