Симптоми
Имайте предвид сценария, описан по-долу:
- Имате база данни, която използва модела за възстановяване на BULK_LOGGED или SIMPLE в Microsoft SQL Server 2008, SQL Server 2008 R2, SQL Server 2012 или SQL Server 2014.
- Включвате превключвателя SET XACT_ABORT.
- Опитвате се да изпълните няколко команди BULK INSERT в единична разпределена транзакция.
В този случай командата BULK INSERT може да не успее и да получите следното съобщение за грешка:
Забележка
Местоположение: pageref.cpp:913
Израз: IS_OFF (BUF_MINLOGGED, m_buf-bstat>) || pageModifyType != PageModifyType_Contents || GetPagePtr ()->IsTextPage ()
SPID: 56
ИД на процеса: 2136
Съобщение 3624, ниво 20, състояние 1, ред 7
Проверката на системното утвърждение е неуспешна. Проверете регистрационния файл за грешки на SQL Server за подробности. Обикновено неуспешното твърдение се дължи на софтуерен проблем или повреда на данните. За да проверите за повреда на базата данни, помислете дали да не изпълните DBCC CHECKDB. Ако сте се съгласили да изпращате вторични копия на Microsoft по време на инсталирането, на Microsoft ще се изпрати мини вторично копие. Актуализация може да е налична от Microsoft в най-новия сервизен пакет или в QFE от техническата поддръжка.
Съобщение 0, Ниво 20, Състояние 0, Ред 0
Възникна сериозна грешка при текущата команда. Резултатите, ако има такива, трябва да бъдат отхвърлени.
Освен това в регистрационната папка на SQL Server може да се генерира мини-вторично копие.
Забележка: Този проблем обикновено възниква, когато се използват услугите за интеграция на SQL Server (SSIS). Например координаторът на разпределени транзакции на Microsoft (MS DTC) участва в стартирането на разпределени транзакции заедно със SET XACT_ABORT ON , ако свойството за ниво пакет TransactionOption е зададено на Required.
Причина
Този проблем възниква поради грешка в SQL Server 2008, SQL Server 2008 R2, SQL Server 2012 или SQL Server 2014.
Решение
Проблемът е коригиран за първи път в следващата кумулативна актуализация на SQL Server.
Сборна актуализация 1 за SQL Server 2014 г. /bg-bg/help/2931693
Сборна актуализация 8 за SQL Server 2012 SP1 /bg-bg/help/2917531
Сборна актуализация 10 за SQL Server 2008 R2 SP2 /en-us/help/2908087
Сборна актуализация 10 за SQL Server 2008 SP1 /en-us/help/2279604
Сборна актуализация 1 за SQL Server 2008 SP2 /en-us/help/2289254
Сборна актуализация 5 за SQL Server 2008 R2 /en-us/help/2438347
За кумулативните актуализации за SQL Server
Всяка нова кумулативна актуализация за SQL Server съдържа всички актуални поправки и корекции на защитата, които са били включени в предишната кумулативна актуализация. Прегледайте последните кумулативни актуализации за SQL Server:
- Последна сборна актуализация за SQL Server 2014
- Последна сборна актуализация за SQL Server 2012 SP1
- Последна кумулативна актуализация за SQL Server 2008 R2 SP2
- Последна кумулативна актуализация за SQL Server 2008 SP1
- Последна сборна актуализация за SQL Server 2008 SP2
- Последна сборна актуализация за SQL Server 2008 R2
Заобиколно решение
За да заобиколите този проблем, настройте базата данни на модела за пълно възстановяване.
Състояние
Microsoft потвърждава, че това е проблем в продуктите на Microsoft, които са изброени в раздела „Важи за“.
Справки
За повече информация относно настройката на SET XACT_ABORT посетете следния уеб сайт на Microsoft Developer Network (MSDN):
Обща информация за настройката "SET XACT_ABORT" За повече информация за операциите, които се записват минимално, посетете следния уеб сайт на MSDN:
Обща информация за операциите, които се регистрират минимално За повече информация относно начините за поддържане на целостта на данните чрез транзакции посетете следния уеб сайт на MSDN:
Обща информация как да поддържате целостта на данните с помощта на транзакции За повече информация относно модела на постъпково обслужване за SQL Server щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
935897 От екипа на SQL Server се предлага модел на постъпково обслужване, който да предоставя актуални корекции за съобщени проблеми
За допълнителна информация относно схемата за именуване на актуализациите на SQL Server щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:
822499 Нова схема за именуване на пакетите за актуализация на софтуера на Microsoft SQL Server За повече информация относно терминологията за софтуерни актуализации щракнете върху следния номер на статия в базата знания на Microsoft:
824684 Описание на стандартната терминология, която се използва за описание на софтуерните актуализации на Microsoft