Dropping a SQL Server Index
The SQL Server Native Client OLE DB provider exposes the IIndexDefinition::DropIndex function. This allows consumers to remove an index from a SQL Server table.
The SQL Server Native Client OLE DB provider exposes some SQL Server PRIMARY KEY and UNIQUE constraints as indexes. The table owner, database owner, and some administrative role members can modify a SQL Server table, dropping a constraint. By default, only the table owner can drop an existing index. Therefore, DropIndex success or failure depends not only on the application user's access rights but also on the type of index indicated.
Consumers specify the table name as a Unicode character string in the pwszName member of the uName union in the pTableID parameter. The eKind member of pTableID must be DBKIND_NAME.
Consumers specify the index name as a Unicode character string in the pwszName member of the uName union in the pIndexID parameter. The eKind member of pIndexID must be DBKIND_NAME. The SQL Server Native Client OLE DB provider does not support the OLE DB feature of dropping all indexes on a table when pIndexID is null. If pIndexID is null, E_INVALIDARG is returned.