社区
数据库
帖子详情
(ADO)数据库中存取BMP图像,急!!!!!!!!!
哟西哟西地
2004-02-03 12:45:50
谁有将图像写入数据库(ADO)的相关代码,我刚学可总不能实现!!!!!!!!!
哪位兄弟帮忙?
有代码最好,
...全文
84
3
打赏
收藏
(ADO)数据库中存取BMP图像,急!!!!!!!!!
谁有将图像写入数据库(ADO)的相关代码,我刚学可总不能实现!!!!!!!!! 哪位兄弟帮忙? 有代码最好,
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
AkiraChing
2004-02-03
打赏
举报
回复
储存图片
rs.CreateInstance(__uuidof(Recordset));
rs->Open("相片",_variant_t((IDispatch *)m_pConn,true), adOpenKeyset,
adLockOptimistic, adCmdTable);
rs->AddNew();
_variant_t var;
COleDateTime tDate;
m_datePic.GetTime(tDate);
var.vt=VT_DATE;
var.date=tDate;
rs->GetFields()->GetItem("拍摄日期")->Value=var;
var.Clear();
var.vt=VT_BSTR;
var.bstrVal=strTheme.AllocSysString();
rs->GetFields()->GetItem("主题名称")->Value=var;
var.bstrVal=strId.AllocSysString();
rs->GetFields()->GetItem("照片 ID")->Value=var;
CFile file;
if( !file.Open( m_strPicfile, CFile::modeRead) )
return ;
DWORD uFilesize =(DWORD) file.GetLength();
char* pBuffer = new char[uFilesize + 1];
if(pBuffer!=NULL)
{
ZeroMemory(pBuffer,uFilesize + 1);
VERIFY(file.Read(pBuffer,uFilesize)==uFilesize);
VARIANT varImage;
SAFEARRAY *psa;
SAFEARRAYBOUND rgsabound[1];
rgsabound[0].lLbound = 0;
rgsabound[0].cElements = uFilesize;
psa = SafeArrayCreate(VT_UI1, 1, rgsabound);
for (long i = 0; i < (long)uFilesize; i++)
SafeArrayPutElement (psa, &i, pBuffer++);
varImage.vt = VT_ARRAY | VT_UI1;
varImage.parray = psa;
rs->GetFields()->GetItem("图片")->AppendChunk(varImage);
}
rs->Update();
pBuffer=pBuffer-uFilesize;
if(pBuffer)
{
delete [] pBuffer;
pBuffer=NULL;
}
MessageBox("添加数据成功!","提示",MB_OK|MB_ICONINFORMATION);
}
catch (_com_error e)
{
PrintComError(e);
}
if(rs->State)
rs->Close();
AkiraChing
2004-02-03
打赏
举报
回复
读取图片
HGLOBAL hgImageMem = NULL;
LPVOID lpvImageMem = NULL;
long lImageSize = rs->GetFields()->GetItem("图片")->ActualSize;
if(lImageSize > 0)
{
_variant_t varImage;
varImage = rs->GetFields()->GetItem("图片")->GetChunk(lImageSize);
if(varImage.vt == (VT_ARRAY | VT_UI1))
{
hgImageMem = GlobalAlloc(GHND, lImageSize);
if(hgImageMem!=NULL)
{
lpvImageMem = GlobalLock( hgImageMem);
char *pBuffer= NULL;
SafeArrayAccessData(varImage.parray,(void **)&pBuffer);
CopyMemory(lpvImageMem,pBuffer,lImageSize);
SafeArrayUnaccessData (varImage.parray);
CFile file("a.jpg",CFile::modeWrite|CFile::modeCreate);
file.Write(lpvImageMem,lImageSize);
file.Close();
}
}
}
GlobalUnlock(hgImageMem);
lpvImageMem=NULL;
GlobalFree(hgImageMem);
bluebohe
2004-02-03
打赏
举报
回复
http://www.csdn.net/develop/Read_Article.asp?Id=15019
mysql导入
bmp
_
数据库
中
存取
BMP
图像
二进制大对象BLOB(Binary Large Object)其
存取
的方式与普通数据有所区别。本文将介绍利用
ADO
在
数据库
中
存取
BLOB数据的具体实现过程,并给出实现
图像
存取
显示的完整示例工程。二、前期准备首先我们建立一张名为userinfo的表,包含三个字段:id,username,old,photo,其
中
photo是一个可以存储二进制数据的字段。2.1 在SQL SERVER
中
我们可以在Que...
DELPHI
存取
JPEG、
BMP
图像
到
数据库
完整解决方案
unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, DB, ExtDlgs, StdCtrls,
ADO
DB, Grids, DBGrids, ExtCtrls,jpeg,DBCtrls;typeTForm1 = class(TForm)
vc mysql
ado
blob_使用
ADO
实现BLOB数据的
存取
--
ADO
开发实践之二
一、前言在上一篇文章《》
中
我们详细介绍了
ADO
基本的操作方法,在实际的开发过程
中
我们常常需要存储较大的二进制数据对象,比如:
图像
、音频文件、或其它二进制数据,这些数据我们称之为二进制大对象BLOB(BinaryLargeObject),其
存取
的方式与普通数据有所区别。本文将介绍利用
ADO
在
数据库
中
存取
BLOB数据的具体实现过程,并给出实现
图像
存取
显示的完整。二、前期准备首先我们建立一张名为us...
c mysql 图片
存取
_C++使用
ADO
实现
存取
图片的方法
一般在网上查到的资料
中
向Server2000存储图片代码比较多,从
数据库
中
读取图片并显示也不少,但是把图片从
数据库
中
二进制数据转换为原图片保存在本地,就很少有C++代码了。本文就此问题一步一步地讲一讲解决的方法:一、使用
数据库
前的准备我们使用
ADO
,是用_ConnectionPtr,_RecordsetPtr来操纵
数据库
的。还有一个_CommandPtr,本程序没有使用它。为了使用
ADO
,需要导入...
使用DELPHI对ACCESS和SQL
数据库
存取
图片
一个在
数据库
存取
图片的演示代码,包含ACCESS
数据库
和SQL
数据库
两种方式。1、 小高端用户
ADO
+SQL20002、 在小高端用户使用的
数据库
中
SQL是最为普遍的。首先先要用上流(Stream)程序如下:procedure TForm1.DBGrid1DblClick(Sender: TObject); //双击DBGrid栏显示图片VarM
数据库
4,017
社区成员
39,805
社区内容
发帖
与我相关
我的任务
数据库
VC/MFC 数据库
复制链接
扫一扫
分享
社区描述
VC/MFC 数据库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章