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


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 AS XML( MyCollection);
    /* more code may go here */
    END
    

Разрешения

Чтобы удалить требуется XML SCHEMA COLLECTIONDROP разрешение на коллекцию.

Примеры

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

DROP XML SCHEMA COLLECTION ManuInstructionsSchemaCollection;
GO