KB2723232 – КОРЕКЦИЯ: "Възникна грешка в базата данни. Свържете се с вашия системен администратор", се появява, когато се опитате да попълните бизнес правилото на обект в SQL Server 2008 R2 MDS

Отнася се за
SQL Server 2008 R2

Microsoft разпространява корекциите за Microsoft SQL Server 2008 R2 като един файл за изтегляне. Тъй като корекциите са кумулативни, всяко ново издание съдържа всички актуални поправки и корекции на защитата, които са били включени в предишното издание на корекция на SQL Server 2008 R2.

Симптоми

Имайте предвид сценария, описан по-долу:

  • Създавате бизнес правило за обект в SQL Server 2008 R2 Master Data Services (MDS). Обектът има множество атрибути, базирани на домейни, които се попълват от стойностите от един и същ обект. Новото бизнес правило има условия, които са дефинирани за повече от един атрибут, базиран на домейн, и тези условия сочат към един и същ обект.
  • Опитвате се да публикувате бизнес правилото.

В този случай получавате съобщение за грешка, подобно на следното:

Забележка

          
Възникнала е грешка в базата данни. Свържете се с вашия системен администратор.

Освен това можете да намерите грешка, която прилича на описаното по-долу в MDSTrace.log

MDS грешка: 0: Възникнала е грешка в базата данни. Свържете се с вашия системен администратор.
   в Microsoft.MasterDataServices.Core.DataAccess.DbHelper.HandleExceptions(Exception ex)
   at Microsoft.MasterDataServices.Core.DataAccess.DbHelper.ExecuteNonQuery(String query, CommandType, CommandType, CloseConnectionBehavior, closeConnection), closeBehavior)
   в Microsoft.MasterDataServices.Core.DataAccess.BusinessRules.BusinessRulesExecuteScript(CloseConnectionBehavior, String script)
   в Microsoft.MasterDataServices.Core.BusinessLogic.BusinessRulesPublish.Generation.RunGeneration(BusinessRules businessLogicLayer, Int32 entityId, BREntityMemberType ruleSubType, OperationResult result)
Информация за отстраняване на грешки в SQL: Число: 102, съобщение: Неправилен синтаксис близо до 'DBA.<ИМЕ>.<LEAF'>., Server: ServerName, Proc: udp_SYSTEM_X_X_CHILDATTRIBUTES_ProcessRules, Line: X

      

Причина

Причина за този проблем е възникнал известен проблем в листа със стилове XSLT, който е бил използван за генериране на синтаксиса на съхранени процедури за съхранените процедури за бизнес правила. Конкретният проблем беше, че в синтаксиса липсваше запетая.

Решение

Кумулативна информация за актуализацията

SQL Server 2008 R2 SP2

Корекцията за този проблем е издадена за първи път в сборна актуализация 2. За допълнителна информация как да получите този сборен пакет за актуализация за SQL Server 2008 R2, щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:

2740411 Сборен пакет за актуализация 2 за SQL Server 2008 R2 Service Pack 2 Забележка Тъй като компилациите са кумулативни, всяка нова корекция съдържа всички актуални поправки и корекции на защитата, които са включени в предишното издание на корекция за SQL Server 2008 R2. Препоръчваме ви да помислите за прилагане на най-новото издание на корекцията, което съдържа тази гореща корекция. За допълнителна информация щракнете върху следния номер на статия, за да прегледате статията в базата знания на Microsoft:

2567616 Компилациите на SQL Server 2008 R2, които са издадени след издаването на SQL Server 2008 R2 Service Pack 2

Състояние

Microsoft потвърждава, че това е проблем в продуктите на Microsoft, които са изброени в раздела „Важи за“.