次の方法で共有


sp_ivindexhasnullcols (Transact-SQL)

適用対象: SQL Server

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

Transact-SQL 構文表記規則

構文

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

引数

[ @viewname = ] N'viewname'

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

[ @fhasnullcols = ] fhasnullcols OUTPUT

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

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

Note

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

リターン コードの値

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

解説

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

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

アクセス許可

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