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_hData ist. |
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 CByteArray
nicht mehr auftritt. Dieser Rat gilt für die Programmierung mit Data Access Objects (DAO) sowie für Open Database Connectivity (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_hData
mithilfe 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
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_hData
gespeicherten 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;