如何以流的方式将文件写入数据库..

路过路人乙 2011-10-17 11:16:51
想把某些文件写入数据库中..需要的时候再调用出来..

如何以流的方式存取呢?

求指点...
...全文
213 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
缘中人 2011-10-17
  • 打赏
  • 举报
回复
adoquery,

query 有区别的
路过路人乙 2011-10-17
  • 打赏
  • 举报
回复
知道了知道了..应该写成:
qryTmp->Parameters->ParamByName("cptname")->LoadFromStream(Inifile,ftBlob);

呵呵..

另外 Inifile 我是采用的路径 + 文件名..不会有问题吧?
路过路人乙 2011-10-17
  • 打赏
  • 举报
回复
..CSDN不能编辑贴真麻烦...出错提示是..LoadFromStream 不是 TField 的成员
路过路人乙 2011-10-17
  • 打赏
  • 举报
回复
因为我是指定字段名写入的...所以我将你的
Query->Parameters->Items[0]->LoadFromStream(Inifile,ftBlob) ;

改成了
Query->FieldByName("cptname")->LoadFromStream(Inifile,ftBlob) ;

会有出错提示:

LoadFromStream 不是 Query 的成员....
zzbinfo 2011-10-17
  • 打赏
  • 举报
回复
其实就是blob字段得读写呀.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
TADOQuery *Query = new TADOQuery(Application);
Query->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ExtractFilePath(Application->ExeName) + "1.mdb;";
Query->SQL->Text = "insert into table1(ee)values('asddasd')";
Query->ExecSQL();
TMemoryStream *Inifile = new TMemoryStream();
Inifile->LoadFromFile("123.ini");
Query->SQL->Text = "update table1 set asd =:PHOTO where ee ='asddasd'" ;
Query->Parameters->Items[0]->LoadFromStream(Inifile,ftBlob) ;
Query->ExecSQL();
Query->Close();
delete Query;
delete Inifile;

}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button2Click(TObject *Sender)
{
TADOQuery *Query = new TADOQuery(Application);
Query->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ExtractFilePath(Application->ExeName) + "1.mdb;";
Query->SQL->Text = "select * from table1 where ee ='asddasd'";
Query->Open();
TBlobField * pField1=(TBlobField *)Query->FieldByName("asd");
if(!pField1->IsNull)
{
TADOBlobStream* pmem=new TADOBlobStream (pField1,bmRead);
pmem->Seek(0,soFromBeginning);
TMemoryStream *Inifile = new TMemoryStream();
Inifile->LoadFromStream(pmem);
Inifile->SaveToFile("12345.ini");
delete Inifile;
delete pmem;
}
Query->Close();
delete Query;

}

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧