Поделиться через


Отмена команд (XMLA)

В зависимости от того, какие разрешения администратора есть у пользователя, подающего команду, команда Cancel в XML для аналитики (XMLA) может отменить выполнение команды в рамках сеанса, сеанс, соединение, процесс сервера либо ассоциированный сеанс или соединение.

Отмена команд

Пользователь может отметить выполняемую в данный момент команду в контексте текущего явного сеанса, отправив команду Cancel без указания свойств.

ПримечаниеПримечание

Пользователь не может отменить команду, выполняющуюся в рамках неявного сеанса.

Отмена пакетов команд

Если пользователь отменяет команду Batch, то отменяются все остальные команды в рамках команды Batch, выполнение которых еще не завершено. Если команда Batch входила в состав транзакции, то все команды, которые выполнялись до запуска команды Cancel, откатываются.

Отмена сеансов

Указав идентификатор сеанса для явного сеанса в свойстве SessionID команды Cancel администратор сервера или базы данных может отменить сеанс, включая выполняемую в данный момент команду. Администратор баз данных может отменять сеансы только тех баз данных, на которые у него есть разрешения администратора.

Администратор базы данных может извлекать активные сеансы для указанной базы данных путем извлечения набора строк схемы DISCOVER_SESSIONS. Чтобы извлечь набор строк схемы DISCOVER_SESSIONS, администратор базы данных использует метод XMLA Discover и указывает соответствующий идентификатор базы данных для столбца ограничений SESSION_CURRENT_DATABASE в свойстве Restrictions метода Discover.

Отмена соединений

Указав идентификатор соединения в свойстве ConnectionID команды Cancel, администратор сервера может отменить все сеансы, ассоциированные с данным соединением, включая все выполняющиеся команды, а также отменить само соединение.

ПримечаниеПримечание

Если экземпляру служб MicrosoftSQL ServerAnalysis Services не удается обнаружить и отменить сеансы, ассоциированные с соединением, например когда средство переноса данных открывает несколько сеансов, обеспечивая обмен данными по протоколу HTTP, экземпляр не может отменить соединение. Если такая ситуация возникает во время выполнения команды Cancel, возникает ошибка.

Администратор сервера может извлекать активные соединения для экземпляра служб Analysis Services путем извлечения набора строк схемы DISCOVER_CONNECTIONS при помощи метода XMLA Discover.

Отмена процессов сервера

Указав идентификатор процесса сервера (SPID) в свойстве SPID команды Cancel, администратор сервера может отменять команды, ассоциированные с данным идентификатором SPID.

Отмена ассоциированных сеансов и соединений

Установив свойству CancelAssociated значение TRUE, можно отменять соединения, сеансы и команды, ассоциированные с соединением, сеансом или идентификатором SPID, указанным в команде Cancel.