CLongBinary 类

简化对数据库中超大二进制数据对象(经常称作 BLOB,即“二进制大对象”)的使用。

语法

class CLongBinary : public CObject

成员

公共构造函数

名称 描述
CLongBinary::CLongBinary 构造 CLongBinary 对象。

公共数据成员

“属性” 描述
CLongBinary::m_dwDataLength 包含其句柄存储在 m_hData 的数据对象的实际大小(以字节为单位)。
CLongBinary::m_hData 包含实际图像对象的 Windows HGLOBAL 句柄。

备注

例如,SQL 表中的记录字段可能包含表示图片的位图。 对象 CLongBinary 存储此类对象并跟踪其大小。

注意

一般来说,现在最好将 CByteArrayDFX_Binary 函数结合使用。 仍然可以使用 CLongBinary,但在 Win32 下 CByteArray 提供更多功能,因为不再遇到 16 位 CByteArray 的大小限制。 此建议适用于使用数据访问对象 (DAO) 以及开放式数据库连接 (ODBC) 进行编程。

若要使用 CLongBinary 对象,请在记录集类中声明类型 CLongBinary 的字段数据成员。 此成员将是记录集类的嵌入成员,并在构造记录集时构造。 构造 CLongBinary 对象后,记录字段交换 (RFX) 机制从数据源上当前记录中的字段加载数据对象,并在更新记录时将其存储回记录。 RFX 查询数据源的二进制大型对象的大小,(通过 CLongBinary 对象的 m_hData 数据成员)为其分配存储,并将 HGLOBAL 句柄存储到 m_hData 的数据中。 RFX 还会将数据对象的实际大小存储在 m_dwDataLength 数据成员中。 通过 m_hData 处理对象中的数据,方法与控制 Windows HGLOBAL 句柄中存储的数据通常所使用的方法一致。

销毁记录集时,嵌入的 CLongBinary 对象也会被销毁,并且其析构函数会解除分配 HGLOBAL 数据句柄。

有关大型对象和使用 CLongBinary 的详细信息,请参阅记录集 (ODBC)记录集:使用大型数据项 (ODBC) 等文章。

继承层次结构

CObject

CLongBinary

要求

标头:afxdb_.h

CLongBinary::CLongBinary

构造 CLongBinary 对象。

CLongBinary();

CLongBinary::m_dwDataLength

将存储在 HGLOBAL 句柄中的数据的实际大小(以字节为单位)存储在 m_hData 中。

SQLULEN m_dwDataLength;

注解

此大小可能小于为数据分配的内存块的大小。 调用 Win32 GLobalSize 函数以获取分配的大小。

CLongBinary::m_hData

将 Windows HGLOBAL 句柄存储到实际的二进制大型对象数据。

HGLOBAL m_hData;

另请参阅

CObject 类
层次结构图
CRecordset 类