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


Удаление индекса SQL Server

Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)

Скачать драйвер OLE DB

OLE DB Driver for SQL Server предоставляет функцию IIndexDefinition::DropIndex. Это позволяет потребителям удалять индекс из таблицы SQL Server.

Драйвер OLE DB для SQL Server предоставляет некоторые ограничения ПЕРВИЧНОГО КЛЮЧА SQL Server и UNIQUE в качестве индексов. Владелец таблицы, владелец базы данных и некоторые члены административных ролей могут изменить таблицу SQL Server, удаляя ограничение. По умолчанию только владелец таблицы может удалять существующие индексы. Таким образом, будет ли функция DropIndex выполнена успешно или с ошибкой, зависит не только от прав доступа пользователя приложения, но также и от указанного типа индекса.

Пользователь задает имя таблицы в виде символьной строки в Юникоде в элементе pwszName объединения uName в параметре pTableID. Элемент eKind параметра pTableID должен быть равен DBKIND_NAME.

Потребитель задает имя индекса в виде строки в Юникоде в элементе pwszName объединения uName в параметре pIndexID. Элемент eKind параметра pIndexID должен быть равен DBKIND_NAME. Драйвер OLE DB для SQL Server не поддерживает функцию OLE DB удаления всех индексов таблицы, если значение параметра pIndexID равно NULL. Если значение параметра pIndexID равно NULL, то возвращается E_INVALIDARG.

См. также

Таблицы и индексы
Инструкция ALTER TABLE (Transact-SQL)
DROP INDEX (Transact-SQL)