Share via


DROP XML SCHEMA COLLECTION (Transact-SQL)

Deletes the whole XML schema collection and all of its components.

Topic link iconTransact-SQL Syntax Conventions

Syntax

DROP XML SCHEMA COLLECTION [ relational_schema. ]sql_identifier

Arguments

  • relational_schema
    Identifies the relational schema name. If not specified, the default relational schema is assumed.

  • sql_identifier
    Is the name of the XML schema collection to drop.

Remarks

Dropping an XML schema collection is a transactional operation. This means when you drop an XML schema collection inside a transaction and later roll back the transaction, the XML schema collection is not dropped.

You cannot drop an XML schema collection when it is in use. This means that the collection being dropped cannot be any of the following:

  • Associated with any xml type parameter or column.

  • Specified in any table constraints.

  • Referenced in a schema-bound function or stored procedure. For example, the following function will lock the XML schema collection MyCollection because the function specifies WITH SCHEMABINDING. If you remove it, there is no lock on the XML SCHEMA COLLECTION.

    CREATE FUNCTION dbo.MyFunction()
    RETURNS int
    WITH SCHEMABINDING
    AS
    BEGIN
       ...
       DECLARE @x XML(MyCollection)
       ...
    END
    

Permissions

To drop an XML SCHEMA COLLECTION requires DROP permission on the collection.

For more information, see Permissions on an XML Schema Collection.

Examples

The following example shows removing an XML schema collection.

DROP XML SCHEMA COLLECTION ManuInstructionsSchemaCollection
GO