可以啊,你把二进制数据放到LONGBLOB字段就不OK?
解决方案 »
- 局域网备份数据库
- "新手"关于数据库表外键、主键、索引的问题
- mysqlbinlog: unknown variable 'default-character-set=gb2312'
- load data infile
- 怎样在MySQL中使用update?谢谢!
- mysql存储过程[动态sql]
- 求一条统计用的sql
- 谁有mysql control center的帮助文档。为什么我安装后没有找到它的帮助?
- 2002年快要过去了,建议各位同仁自觉结贴,实在结不了的请斑竹帮忙了。
- 怎样把.dbf数据表的结构转换到mysql?
- 请问在存储过程中怎样访问其他服务器中的数据库中的表? 寻高手赐教!
- Mysql对中文支持的问题
取出时再BASE64解码
{
int nColNum=p->col_names.GetSize()-1;
if(nColNum<=0)
{
AddNewDebugLog("AddNewImage","参数错误","没有要加入的image字段");
return false;
}
int nBufLen=0;
CString strCurrentFileName;
for(int i=0;i<nColNum;i++)
{
strCurrentFileName.Format("%sF%d.jpg",strFileName,i);
CFile file;
if(file.Open(strCurrentFileName.LockBuffer(),CFile::modeReadWrite|CFile::shareDenyNone))
{
nBufLen+=file.GetLength();
file.Close();
}
else
{
AddNewDebugLog("AddNewImage",strCurrentFileName.LockBuffer(),"打开错误");
return false;
}
}
nBufLen=(int)(nBufLen*2);
char *query,*pBuf;
query=new char[nBufLen];
DWORD dwFileLen=0;
sprintf(query,"Insert into %s(",p->tab_name);
for(i=0;i<nColNum;i++)
{
strcat(query,p->col_names.GetAt(i).LockBuffer());
strcat(query,",");
}
strcat(query,p->col_names.GetAt(i).LockBuffer());
strcat(query,")Values(");
strcat(query,p->insert_vals.GetAt(0).LockBuffer());
strcat(query,",'");
pBuf=query+strlen(query);
for(i=0;i<nColNum;i++)
{
strCurrentFileName.Format("%sF%d.jpg",strFileName,i);
CFile file;
if(file.Open(strCurrentFileName,CFile::modeRead|CFile::shareDenyNone))
{
DWORD dwBufLen=file.GetLength();
dwFileLen+=dwBufLen;
char *buf=new char[dwBufLen];
file.Read(buf,dwBufLen);
file.Close();
pBuf+=mysql_escape_string(pBuf,buf,dwBufLen);
if(i==(nColNum-1))
{
strcat(pBuf,"')");
pBuf+=sizeof(char)*2;
}
else
{
strcat(pBuf,"','");
pBuf+=sizeof(char)*3;
}
delete []buf;
}
else
{
AddNewDebugLog("AddNewImage",strCurrentFileName.LockBuffer(),"打开错误");
delete []query;
return false;
}
}
if(mysql_query(&m_MySql,query))
{
char* szError=CNewMysql::OutError();
AddNewDebugLog("CNewMysql","AddNewImage",szError);
delete []query;
return false;
}
delete []query;
return true;
}