Ознаки
Розглянемо такий сценарій:
-
Ви використовуєте реплікацію в Microsoft SQL Server 2012 або SQL Server 2014.
-
Ви додаєте абонентську плату в передплаті реплікації, а потім видаляєте її.
У цьому сценарії може з'явитися таке повідомлення про помилку 515:
Не вдається вставити значення NULL у стовпець "article_id", таблицю "<DistributionDatabaseName> .DBO.MSrepl_commands"; стовпець не підтримує Null-значення. Не вдалося вставити.
Причина
Ця проблема виникає через регресія SQL Server 2012. Під час додавання передплатою, а потім його видалення буде видалено, а метадані реплікації негайно видаляються через те, що перед командою LogReader буде запропоновано додати цю передплатну.
Спосіб вирішення
Ця проблема була спочатку зафіксоване в цьому сукупному оновленні сервера SQL Server.
Сукупне оновлення 1 для SQL Server 2012 з пакетом оновлень 2 (SP2) /en-us/help/2976982
Сукупне оновлення 2 для SQL Server 2014 /en-us/help/2967546
Сукупне оновлення 10 для SQL Server 2012 SP1 /en-us/help/2954099
Кожне нове Сукупне оновлення для SQL Server містить усі поточні виправлення та всі виправлення системи безпеки, які були включені до попереднього сукупного оновлення. Ознайомтеся з найновішими сукупними оновленнями для сервера SQL Server:
Стан
Корпорація Майкрософт підтвердила, що це проблема в продуктах Microsoft, перелічених у розділі "застосовується до".