数据库读取 BLOB 字段错误?
BDS2006 + MySQL , ADO 连接
“存”、“取”图片(JPG)都没有问题,很正常
“存”自定义的结构数据也没问题,但当“取”自定义的结构数据时就发生异常,提示 Invalid class typecast ,应该无需类型转换,自定义结构也算二进制,这是怎
么回事?望请各位不啬赐教。
(存)
TMemoryStream* pMS = new TMemoryStream;
pMS->LoadFromFile(Edit2->Text);
ADOQuery1->Parameters->ParamByName("title")->Value = Edit1->Text;
ADOQuery1->Parameters->ParamByName("image")->LoadFromStream(pMS, ftBlob);
ADOQuery1->ExecSQL();
(取)
ADOQuery2->Parameters->ParamByName("id")->Value = Edit3->Text.ToInt();
ADOQuery2->Open();
TMemoryStream* pMS = new TMemoryStream;
TBlobField* pField = (TBlobField*) ADOQuery2->FieldByName("image");
pField->SaveToStream(pMS);
pMS->SaveToFile("aa.jpg");
ADOQuery2->Close();