These Transact-SQL statements do not generate SQLOLEDB rowsets or a count of affected rows when executed:
These statements either return one or more informational messages, or cause Microsoft® SQL Server™ to return informational messages in place of rowset or count results. On successful execution, SQLOLEDB returns S_OK and the message or messages are available to the SQLOLEDB consumer.
SQLOLEDB returns S_OK and has one or more informational messages available following the execution of many Transact-SQL statements or consumer execution of a SQLOLEDB member function.
The SQLOLEDB consumer allowing dynamic specification of query text should check error interfaces after every member function execution regardless of the value of the return code, the presence or absence of a returned IRowset or IMultipleResults interface reference, or a count of affected rows.