2015-08-04 4 views
2

У меня есть следующие две команды XMLA alter, которые индивидуально работают нормально. Я хотел бы запустить их одновременно в студии SQL Management. Я попробовал обернуть их командой, пакетом и рядом других элементов. Кажется, я не могу заставить что-то работать правильно.Как выполнить несколько команд XMLA Alter одновременно?

<Alter AllowCreate="true" ObjectExpansion="ObjectProperties" xmlns="http://schemas.microsoft.com/analysisservices/2003/engine"> 
    <Object> 
     <DatabaseID>DB1</DatabaseID> 
     <RoleID>Role</RoleID> 
    </Object> 
    <ObjectDefinition> 
     <Role xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400"> 
      <ID>Role</ID> 
      <Name>ReadersRole</Name> 
      <Members> 
       <Member> 
        <Name>Domain\ReaderUserName</Name> 
       </Member> 
      </Members> 
     </Role> 
    </ObjectDefinition> 
</Alter> 


<Alter AllowCreate="true" ObjectExpansion="ObjectProperties" xmlns="http://schemas.microsoft.com/analysisservices/2003/engine"> 
    <Object> 
     <DatabaseID>DB2</DatabaseID> 
     <RoleID>Role</RoleID> 
    </Object> 
    <ObjectDefinition> 
     <Role xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400"> 
      <ID>Role</ID> 
      <Name>ReadersRole</Name> 
      <Members> 
       <Member> 
        <Name>Domain\ReaderUserName</Name> 
       </Member> 
      </Members> 
     </Role> 
    </ObjectDefinition> 
</Alter> 

ответ

3

Вы можете попробовать просто положить

<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine"></Batch>

тег вокруг них?

+0

Я попытался добавить партию вокруг запроса и получил следующую ошибку. Элемент Batch в строке 7, столбец 22 (пространство имен urn: schemas-microsoft-com: xml-анализ) не может появляться под Envelope/Body/Execute/Command. Все другие обертки, которые я пробовал, дали аналогичные ошибки. – leemicw

+0

Упс. Пространство имен требуется. Отредактировал свой ответ, чтобы отразить это. – GregGalloway

+0

Пространство имен отлично работало. Спасибо. – leemicw

Смежные вопросы