Blob per Ole Db holen, VC++

Hallo,
ich arbeite im Moment an einem ATL Projekt bei dem ich per OleDb an einer PostgreSql DB rumbaggere.
Ich nuten den OleDb Provider für ODBC mit einem “älteren” ODBC Treiber 8.01.02.
(Der PostgreSql Oledb Treiber hat nicht richtig funktioniert…)

Für “normale” Datensätze funktioniert dies auch einwandfrei.
Nun habe ich das Problem das ich einige Blobs aus der Datenbank holen müsste und stehe etwas auf dem Schlauch.
Wenn ich den OleDB Consumer per Wizard einfüge wird das OID Feld als Long Wert erkannt, den ich mir auch zurückliefern lassen kann (nur nützt mir die ID ja so einzeln nicht wirklich etwas).

LONG m_file_obj;

BEGIN_COLUMN_MAP(CBinObjTableAccessor)

COLUMN_ENTRY_LENGTH_STATUS(9, m_file_obj, m_dwfile_objLength, m_dwfile_objStatus)
END_COLUMN_MAP()
<<<<<

Dann habe ich den Accessor manuell angepasst so das ein Blob-Entry im Accessor steht.

ISequentialStream* m_file_obj;

BEGIN_COLUMN_MAP(CBinObjTableAccessor)

BLOB_ENTRY(9, IID_ISequentialStream, STGM_READ, m_file_obj)
END_COLUMN_MAP()
<<<<<

Nur wenn ich mit diesem Accessor die DB Abfrage durchführe werden mir keine Datensätze zurückgeliefert :frowning: .

Kann mir jmd einen Rat oder Tip geben, wie ich weiterverfahren sollte?

Vielen Dank im Voraus
Grüsse
Christian

also der .net treiber von postgreSQL funktioniert - benutze ich auch :slight_smile:

zur frage - leider keine ahnung