sp_ivindexhasnullcols (Transact-SQL)

適用対象:SQL Server

インデックス付きビューを使ってトランザクション パブリケーションを作成する場合に、インデックス付きビューのクラスター化インデックスが一意であることと、NULL 値が許容される列を含まないことを検証します。 このストアド プロシージャは、パブリッシャー側のパブリケーション データベースで実行されます。

Transact-SQL 構文表記規則

構文

  
sp_ivindexhasnullcols [ @viewname = ] 'view_name'  
        , [ @fhasnullcols= ] field_has_null_columns OUTPUT  

引数

[ @viewname = ] 'view_name' 確認するビューの名前を指定します。 view_namesysname で、既定値はありません。

[ @fhasnullcols = ] field_has_null_columns OUTPUT ビュー インデックスに NULL を許可する列があるかどうかを示すフラグです。 view_namesysname で、既定値はありません。 ビュー インデックスに NULL を許可する列がある場合は、 値 1 を返します。 NULLS を許可する列がビューに含まれていない場合は 、値 0 を返します。

注意

ストアド プロシージャ自体が戻りコード 1 を返す場合、つまりストアド プロシージャの実行にエラーが発生した場合、この値は 0 であり、無視する必要があります。

リターン コードの値

0 (成功) または 1 (失敗)

解説

sp_ivindexhasnullcols はトランザクション レプリケーションで使用されます。

既定では、サブスクライバー側でパブリケーション内のインデックス付きビュー アーティクルはテーブルとして作成されます。 ただし、インデックス付き列で NULL 値が許可されている場合、インデックス付きビューはテーブルではなくサブスクライバーでインデックス付きビューとして作成されます。 このストアド プロシージャを実行すると、現在のインデックス付きビューにこの問題が存在するかどうかをユーザーに警告できます。

アクセス許可

sysadmin 固定サーバー ロールまたはdb_owner固定データベース ロールのメンバーのみが、sp_ivindexhasnullcolsを実行できます。

参照

システム ストアド プロシージャ (Transact-SQL)