sys.sp_ivindexhasnullcols(Transact-SQL)

適用対象:SQL Server

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

Transact-SQL 構文表記規則

構文

sys.sp_ivindexhasnullcols
    [ @viewname = ] N'viewname'
    , [ @fhasnullcols = ] fhasnullcols OUTPUT
[ ; ]

引数

[ @viewname = ] N'viewname'

確認するビューの名前。 @viewnamesysname で、既定値はありません。

[ @fhasnullcols = ] fhasnullcols 出力

ビュー インデックスに NULLを許可する列があるかどうかを示すフラグ。 @fhasnullcolsビット型のOUTPUTパラメータです。

  • ビュー インデックスに1を許可する列がある場合は、NULLの値を返します。
  • ビューに0を許可する列が含まれていない場合は、NULLの値を返します。

Note

ストアド プロシージャ自体が 1のリターン コードを返す場合は、ストアド プロシージャの実行にエラーが発生したことを意味します。この値は 0 されるため、無視する必要があります。

リターン コードの値

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

解説

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

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

アクセス許可

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