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


DROP XML SCHEMA COLLECTION (Transact-SQL)

Область применения: SQL Server Управляемый экземпляр SQL Azure

Удаляет всю коллекцию XML-схем и все ее компоненты.

Соглашения о синтаксисе Transact-SQL

Синтаксис

DROP XML SCHEMA COLLECTION [ relational_schema. ]sql_identifier  

Аргументы

relational_schema
Определяет имя реляционной схемы. Если не задано, предполагается использование реляционной схемы по умолчанию.

sql_identifier
Имя удаляемой коллекции схем XML.

Замечания

Удаление коллекции XML-схем является транзакционной операцией. Если удалить коллекцию схем XML внутри транзакции, а потом сделать откат, коллекция XML-схем не будет удалена.

Коллекцию XML-схем нельзя удалить, если она используется. Таким образом, удаляемая коллекция не может быть в любом из следующих состояний:

  • ассоциированной с любым параметром типа xml или столбцом;

  • указанной в ограничениях любой из таблиц;

  • той, на которую ссылается привязанная к схеме функция или хранимая процедура. Например, следующая функция блокирует коллекцию XML-схем MyCollection, так как функция включает WITH SCHEMABINDING. Если удалить ее, блокировки на XML SCHEMA COLLECTION не будет.

    CREATE FUNCTION dbo.MyFunction()  
    RETURNS int  
    WITH SCHEMABINDING  
    AS  
    BEGIN  
       /* some code may go here */
       DECLARE @x XML(MyCollection)  
       /* more code may go here */
    END;  
    

Разрешения

Для удаления XML SCHEMA COLLECTION необходимо обладать разрешением DROP для коллекции.

Примеры

Следующий пример демонстрирует удаление коллекции XML-схем.

DROP XML SCHEMA COLLECTION ManuInstructionsSchemaCollection;  
GO  

См. также

CREATE XML SCHEMA COLLECTION (Transact-SQL)
ALTER XML SCHEMA COLLECTION (Transact-SQL)
EVENTDATA (Transact-SQL)
Сравнение типизированного и нетипизированного XML
Требования и ограничения для коллекций схем XML на сервере