Удаление индекса SQL Server
Поставщик OLE DB SQL Server Native Client предоставляет функцию IIndexDefinition::DropIndex. Это позволяет потребителям удалять индексы из таблицы SQL Server.
Поставщик OLE DB SQL Server Native Client представляет некоторые ограничения PRIMARY KEY и UNIQUE SQL Server как индексы. Владелец таблицы, владелец базы данных и члены некоторых административных ролей могут изменять таблицу SQL Server, удаляя ограничения. По умолчанию только владелец таблицы может удалять существующие индексы. Таким образом, будет ли функция DropIndex выполнена успешно или с ошибкой, зависит не только от прав доступа пользователя приложения, но также и от указанного типа индекса.
Пользователь задает имя таблицы в виде символьной строки в Юникоде в элементе pwszName объединения uName в параметре pTableID. Элемент eKind параметра pTableID должен быть равен DBKIND_NAME.
Потребитель задает имя индекса в виде строки в Юникоде в элементе pwszName объединения uName в параметре pIndexID. Элемент eKind параметра pIndexID должен быть равен DBKIND_NAME. Поставщик OLE DB SQL Server Native Client не поддерживает функцию удаления всех индексов таблицы в OLE DB, если значение параметра pIndexID равно NULL. Если значение параметра pIndexID равно NULL, то возвращается E_INVALIDARG.
См. также:
Таблицы и индексы
ALTER TABLE (Transact-SQL)
DROP INDEX (Transact-SQL)