KB2958062 - 修正: サブスクリプションを追加してから SQL Server 2012 または SQL Server 2014 で削除するとエラー 515 が発生する

適用先
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

現象

たとえば次のようなシナリオを考えてみます。

  • Microsoft SQL Server 2012 または SQL Server 2014 でレプリケーションを使用します。
  • レプリケーション サブスクリプションにサブスクリプションを追加してから削除します。

このシナリオでは、次のエラー 515 が発生する可能性があります。

注

列 'article_id'、テーブル '<DistributionDatabaseName>.dbo' に値 NULL を挿入できません。MSrepl_commands';列では null 値は許可されません。 INSERT 失敗。

      

原因

この問題は、SQL Server 2012 のリグレッションが原因で発生します。 サブスクリプションを追加してから削除すると、LogReader がサブスクリプションを追加するコマンドを検出する前に遅延があるため、サブスクリプションに関するレプリケーション メタデータはすぐに削除されます。

解決策

この問題は、次の SQL Server の累積的な更新プログラムで最初に修正されました。

SQL Server 2012 SP2 の累積的な更新プログラム 1 /en-us/help/2976982

SQL Server 2014 用の累積的な更新プログラム 2 /en-us/help/2967546

SQL Server 2012 SP1 用の累積的な更新プログラム 10 /en-us/help/2954099

SQL Server 用の累積的な更新プログラムについて

SQL Server 用の新しい累積的な更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正プログラムが含まれています。 SQL Server の最新の累積的な更新プログラムを確認してください。

      

状態

Microsoft は、これが "適用対象" セクションに記載されている Microsoft 製品の問題であることを確認しました。