社区
数据库
帖子详情
读blob字段存到char 数组里
chengchaog
2008-09-17 03:41:05
我通过ADO读了,但是不知道怎么保存到char数组里
那个大大写个例子
...全文
134
7
打赏
收藏
读blob字段存到char 数组里
我通过ADO读了,但是不知道怎么保存到char数组里 那个大大写个例子
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
内存泄漏
2008-09-17
打赏
举报
回复
不知道操作?? ADO的话,用如下代码不是可以实现吗???
long lDataSize = m_pRecordset->GetFields()->GetItem("photo")->ActualSize;///得到数据的长度
if(lDataSize > 0)
{
_variant_t varBLOB;
varBLOB = m_pRecordset->GetFields()->GetItem("photo")->GetChunk(lDataSize);
if(varBLOB.vt == (VT_ARRAY | VT_UI1)) ///判断数据类型是否正确
{
char *pBuf = NULL;
SafeArrayAccessData(varBLOB.parray,(void **)&pBuf); ///得到指向数据的指针
/*****在这里我们可以对pBuf中的数据进行处理*****/
SafeArrayUnaccessData (varBLOB.parray);
}
}
chengchaog
2008-09-17
打赏
举报
回复
long lDataSize = dbs.pRec->GetFields()->GetItem("cd")->ActualSize;
if(lDataSize > 0)
{
_variant_t varBLOB;
varBLOB = dbs.pRec->GetFields()->GetItem("cd")->GetChunk(lDataSize);
if(varBLOB.vt == (VT_ARRAY | VT_UI1))
{
if(m_pBMPBuffer = new char[lDataSize+1]) ///重新分配必要的存储空间
{
for (long l=0; l <lDataSize; l++)
SafeArrayGetElement(varBLOB.parray, &l, (void*)&m_pBMPBuffer[l]);
// SafeArrayAccessData(varBLOB.parray,(void **)&pBuf);
// memcpy(m_pBMPBuffer,pBuf,lDataSize); ///复制数据到缓冲区m_pBMPBuffer
// SafeArrayUnaccessData (varBLOB.parray);
}
}
}
jameshooo
2008-09-17
打赏
举报
回复
也许数字中间有0,被认为是字符串结束符,可能你数据库中存的是UNICODE串吧。把pBuf重新解释成WCHAR*试试看
zhoujianhei
2008-09-17
打赏
举报
回复
很可能是unicode码,将工程转换到unicode,并且将char替换成TCHAR,再试试。
chengchaog
2008-09-17
打赏
举报
回复
,那个我在调试中,怎么数组只能看到最前面的那个字节,后面的都看不到了,打印出来也看不到,
jameshooo
2008-09-17
打赏
举报
回复
CComVariant var = xxx->GetChunk(xxx->ActualSize);
char* pBuf = new char[xxx->ActualSize];
for (long l=0; l<xxx->ActualSize; l++)
SafeArrayGetElement(var.parray, &l, (void*)&pBuf[l]);
delete[] pBuf;
zhoujianhei
2008-09-17
打赏
举报
回复
从数据库读出的结果放到CString中,之后
CString str;
....
char buf[200];
lstrcpy(buf, (LPSTR)(LPCTSTR)str);
ADO
读
写
blob
字段
VC++通过ADO向数据库Oracle插入图片等2进制数据,从数据库
读
取图片等数据
MySQL 62 道面试题及答案.docx
MySQL 62 道面试题及答案.docx
Java数据类型与MySql数据类型对照表
本文讲述了Java数据类型与MySql数据类型对照表。分享给大家供大家参考,具体如下: 类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) VAR
CHAR
L+N VAR
CHAR
java.lang.String 12
CHAR
N
CHAR
java.lang.String 1
BLOB
L+N
BLOB
java.lang.byte[] -4 TEXT 65535 VAR
CHAR
java.lang.String -1 INTEGER 4 INTEGER UNSIGNED java.lang.Long 4 TINYINT 3 TINYI
QT sqlite
BLOB
类型 写入
数组
//sqlite数据库的
BLOB
类型常常用来存
数组
,不同类型和长度的
数组
,需要转化为一个个 //字节。 //哪些
数组
呢,整型、浮点型、字符串都可以。图像的raw数据也是
数组
。
JAVA 操作Oracle 数据库
Blob
字段
因为今天需要测试插入Oracle 数据库带有
Blob
字段
的数据的速度。之前几乎没用过Oracle 数据库所以在写代码测试之前也遇到过很多坑。 测试框架:springBoot +Mybatis 框架的搭建就不具体说明了。 总体思路: 插入:因为Oracle
BLOB
字段
存储的数据是二进制的数据。所以我先把图片转换成二进制数据用byte[]
数组
来存储进行插入。 导出:把
BLOB
字段
的二进制...
数据库
4,018
社区成员
39,807
社区内容
发帖
与我相关
我的任务
数据库
VC/MFC 数据库
复制链接
扫一扫
分享
社区描述
VC/MFC 数据库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章