我爱Aspx >> VC.Net >> <b>VC编程中如何操作数据库中的图像字段</b>在VC进行数据库编程中对图像的处理一直是个难点,经常有朋友为如何向数据库中添加图像或从数据库中读取图像数据并显示处理等问题所困扰,目前关于VC数据库编程的图书不少,但很少有涉及图象问题的,本文针对这一现状,介绍了如何解决上述的问题,希望可以对朋友们有所帮助。
本文以ACESS97为例,采用ODBC方式打开数据库Photo,数据库Photo的images表中含有一个image的图像字段,在刚打开时显示第一条记录。存取操作时关键是确定数据的长度,读数据操作时图像数据可以从记录集的图像字段对应的长二进制成员变量m_Image的成员m_hData得到,这个句柄变量存放分配给图像字段的数据,该对象的另一个成员变量m_dwDataLength为该字段的实际长度,在某些情况下,m_dwDataLength的值有可能小于m_hData中的数据长度值。具体内容可以参考MSND。以下实现的部分关键代码。首先请看 CdbImages记录集的定义:
CdbImages::CdbImages(CDatabase* pdb)
: CRecordset(pdb)
{
//{{AFX_FIELD_INIT(CdbImages)
m_nFields = 2;//数据库中有两个字段
//}}AFX_FIELD_INIT
m_nDefaultType = snapshot;//数据库以快照形式打开
}
CString CdbImages::GetDefaultConnect()
{
return _T("ODBC;DSN=MS Access Database");//以ODBC操作数据库
}
CString CdbImages::GetDefaultSQL()
{
return _T("[Images]");//默认的操作是连接到数据库中的Images表
【我对这篇文章有话说?】
<b>以原始套接字的方式 截..[05-21]
<b>用VC++6.0开发多表联接..[05-21]
ACCESS数据库的安全系统[05-21]
Access数据库和项目之间的数据类..[05-21]
从access到MS SQL SERVER数据导入..[05-21]
Microsoft Access 数据库常规规格[05-21]
[引]SQLServer和Access、Excel数..[05-21]
将Access数据库移植到SQL Server..[05-21]
pb中压缩整理access数据库文件(m..[05-21]
如何远程调用ACCESS数据库[05-21]
<b>一个键盘程序的开发实例..[05-21]
<b>浅谈内存泄漏(三)<..[05-21]
<b>浅谈内存泄漏(二)<..[05-21]
<b>浅谈内存泄漏(一)</..[05-21]
<b>以原始套接字的方式 截..[05-21]
<b>MFC窗口位置管理详细分..[05-21]
<b>在Visual Studio 6.0集..[05-21]
<b>如何在windows程序中读..[05-21]
<b>根据文本串的长度改变窗..[05-21]
<b>VC控件 TreeCtrl 与 Li..[05-21]