Я не могу усечь таблицу, так как она завершается с ошибкой, связанной с репликацией - PullRequest
0 голосов
/ 12 декабря 2018

Я пытаюсь TRUNCATE TABLE, но он завершается неудачно со следующей ошибкой Cannot truncate table 'Subscriptions' because it is published for replication or enabled for Change Data Capture.

Не уверен, как решить эту ошибку, эта проблема с MS SQL SERVER 2014

Я искал этоGoogle, но не нашел четкого ответа один пример https://www.sqlservercentral.com/Forums/Topic1701086-2799-1.aspx

https://www.sqlteam.com/forums/topic.asp?TOPIC_ID=80545

Есть ли простое решение, поскольку у меня нет административных привилегий для базы данных, так как она размещена у третьего лица

Ответы [ 2 ]

0 голосов
/ 12 декабря 2018

Вы можете сослаться на ссылку ниже для этой ошибки.

https://blog.sqlauthority.com/2009/12/25/sql-server-cdc-and-truncate-cannot-truncate-table-because-it-is-published-for-replication-or-enabled-for-change-data-capture/

В ней четко указаны условия возникновения этой ошибки и способы ее устранения, т. Е. Отключение «Изменить сбор данных»"на этом столе.

0 голосов
/ 12 декабря 2018

Усечение нельзя использовать в некоторых случаях, таких как репликация / ограничения внешнего ключа и т. Д.

Согласно документации Microsoft вам необходимо использовать delete.

Ограничения

Нельзя использовать TRUNCATE TABLE для таблиц, на которые:

ссылается ограничение FOREIGN KEY.(Вы можете усечь таблицу с внешним ключом, который ссылается на себя.)

Участвовать в индексированном представлении.

Публикуется с использованием репликации транзакций или репликации слиянием.

Для таблиц с одной или несколькими из этих характеристик вместо этого используйте оператор DELETE.

TRUNCATE TABLE не может активировать триггер, поскольку операция не регистрирует удаления отдельных строк.Дополнительные сведения см. В разделе CREATE TRIGGER (Transact-SQL).

В хранилище данных SQL Azure и параллельном хранилище данных:

TRUNCATE TABLE недопустимо в операторе EXPLAIN.

TRUNCATE TABLE не может быть запущен внутри транзакции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...