Freigeben über


Vorgehensweise: Festlegen großer Datenmengen (OLE DB)

Zum Übergeben eines Zeigers an das eigene Speicherobjekt erstellt der Consumer einen Accessor, der den Wert der BLOB-Spalte bindet, und ruft anschließend die IRowsetChange::SetData-Methode oder die IRowsetChange::InsertRow-Methode auf.

Verfahrensweisen

So legen Sie BLOB-Daten fest

  1. Erstellen Sie eine DBOBJECT-Struktur, die beschreibt, wie auf die BLOB-Spalte zugegriffen werden soll. Legen Sie das dwFlag-Element der DBOBJECT-Struktur auf STGM_READ fest, und legen Sie das iid-Element auf IID_ISequentialStream (die verfügbar zu machende Schnittstelle) fest.

  2. Legen Sie die Eigenschaften in der DBPROPSET_ROWSET-Eigenschaftengruppe so fest, dass das Rowset aktualisiert werden kann.

  3. Erstellen Sie mithilfe eines DBBINDING-Strukturarrays einen Satz von Bindungen (eine pro Spalte). Legen Sie das wType-Element in der DBBINDING-Struktur auf DBTYPE_IUNKNOWN fest, und legen Sie das pObject-Element so fest, dass es auf die von Ihnen erstellte DBOBJECT-Struktur zeigt.

  4. Erstellen Sie einen Accessor mithilfe der Bindungsinformationen im DBBINDINGS-Strukturarray.

  5. Rufen Sie GetNextRows auf, um die nächsten Zeilen für das Rowset abzurufen. Rufen Sie GetData auf, um die Daten aus dem Rowset zu lesen.

  6. Um die Daten festzulegen, erstellen Sie ein Speicherobjekt, das die Daten (und auch den Längenindikator) enthält, und rufen Sie anschließend IRowsetChange::SetData (oder IRowsetChange::InsertRow) mit dem Accessor auf, der die BLOB-Spalte bindet.

Hinweise

Der vollständige Beispielcode befindet sich in der Datei WorkingWithBLOBs.cpp. Sie können von der Website mit SQL Server Downloads auf MSDN ein Archiv herunterladen, das das Beispiel enthält.

Dieses Beispiel wurde mit Microsoft Visual C++ 2005 entwickelt.

SicherheitshinweisSicherheitshinweis

Verwenden Sie nach Möglichkeit die Windows-Authentifizierung. Wenn die Windows-Authentifizierung nicht verfügbar ist, fordern Sie Benutzer auf, ihre Anmeldeinformationen zur Laufzeit einzugeben. Die Anmeldeinformationen sollten nicht in einer Datei gespeichert werden. Wenn Sie die Anmeldeinformationen permanent speichern müssen, verschlüsseln Sie sie mit der Win32 Crypto-API.