CLongBinary-Klasse

Vereinfacht die Verwendung sehr großen Binärdatenobjekte (oft "BLOBs" oder "Binary Large Objects" genannt) in einer Datenbank.

Syntax

class CLongBinary : public CObject

Member

Öffentliche Konstruktoren

Name Beschreibung
CLongBinary::CLongBinary Erstellt ein CLongBinary-Objekt.

Öffentliche Datenmember

Name Beschreibung
CLongBinary::m_dwDataLength Enthält die tatsächliche Größe in Byte des Datenobjekts, dessen Handle gespeichert m_hDataist.
CLongBinary::m_hData Enthält ein Windows HGLOBAL-Handle für das tatsächliche Bildobjekt.

Hinweise

Beispielsweise kann ein Datensatzfeld in einer SQL-Tabelle eine Bitmap enthalten, die ein Bild darstellt. Ein CLongBinary Objekt speichert ein solches Objekt und verfolgt seine Größe.

Hinweis

Im Allgemeinen empfiehlt es sich jetzt, CByteArray in Verbindung mit der DFX_Binary-Funktion zu verwenden. Sie können weiterhin verwenden CLongBinary, bietet aber im Allgemeinen CByteArray mehr Funktionen unter Win32, da die Größenbeschränkung bei 16-Bit CByteArraynicht mehr auftritt. Dieser Rat gilt sowohl für die Programmierung mit Data Access Objects (DAO) als auch für Open Database Verbinden ivity (ODBC).

Um ein CLongBinary Objekt zu verwenden, deklarieren Sie ein Felddatenelement des Typs CLongBinary in Der Recordset-Klasse. Dieses Element ist ein eingebettetes Element der Recordset-Klasse und wird erstellt, wenn das Recordset erstellt wird. Nachdem das CLongBinary Objekt erstellt wurde, lädt der Mechanismus für datensatzfeldaustausch (RFX) das Datenobjekt aus einem Feld im aktuellen Datensatz in der Datenquelle und speichert es beim Aktualisieren des Datensatzes wieder im Datensatz. RFX fragt die Datenquelle für die Größe des binären großen Objekts ab, weist speicher für es (über das CLongBinary Datenelement des m_hData Objekts) zu und speichert ein HGLOBAL Handle für die Daten in m_hData. RFX speichert auch die tatsächliche Größe des Datenobjekts im m_dwDataLength Datenmemm. Arbeiten Sie mit den Daten im Objekt m_hDatamithilfe der gleichen Techniken, die Sie normalerweise verwenden würden, um die in einem Windows-Handle HGLOBAL gespeicherten Daten zu bearbeiten.

Wenn Sie das Recordset zerstören, wird das eingebettete CLongBinary Objekt ebenfalls zerstört, und sein Destruktor verarbeitet den HGLOBAL Datenhandle.

Weitere Informationen zu großen Objekten und zur Verwendung von CLongBinary, finden Sie in den Artikeln Recordset (ODBC) und Recordset: Working with Large Data Items (ODBC).

Vererbungshierarchie

CObject

CLongBinary

Anforderungen

Kopfzeile: afxdb_.h

CLongBinary::CLongBinary

Erstellt ein CLongBinary-Objekt.

CLongBinary();

CLongBinary::m_dwDataLength

Speichert die tatsächliche Größe der im HGLOBAL-Handle m_hDatagespeicherten Daten in Byte.

SQLULEN m_dwDataLength;

Hinweise

Diese Größe kann kleiner als die Größe des speicherblocks sein, der den Daten zugeordnet ist. Rufen Sie die Win32 GLobalSize-Funktion auf, um die zugewiesene Größe abzurufen.

CLongBinary::m_hData

Speichert ein Windows HGLOBAL-Handle für die tatsächlichen binär großen Objektdaten.

HGLOBAL m_hData;

Siehe auch

CObject-Klasse
Hierarchiediagramm
CRecordset-Klasse