With the SQLOLEDB provider, you can set BLOB data by passing a pointer to a consumer storage object.
The consumer creates a storage object containing the data and passes a pointer to this storage object to the provider. The provider then reads data from the consumer storage object and writes it to the BLOB column.
To pass a pointer to its own storage object, the consumer creates an accessor that binds the value of the BLOB column. The consumer then calls the IRowsetChange::SetData or IRowsetChange::InsertRow methods with the accessor that binds the BLOB column. It passes a pointer to a storage interface on the consumer’s storage object.
To set large data