私はそれに取り組んでいる約25 GBのFirbird 1.0データファイルを持っています。ドキュメントとドキュメントの写真をブロブとして保存したテーブルがあります。そこで、fib データセットを使用してこのようなビッグ データ ファイルを開くことができるかどうかを尋ねています。最初に実行時にデータセットを開こうとしました = グリッドが空だったため成功しませんでした。別の試みとして、デザイン モードでアクティブに設定することもできませんでしたアクティブなプロパティとして開くがtrueに設定されていますが、グリッドにフェッチされたデータはありません!
それを機能させるアイデアはありますか?BLOB キャッシュ オプションを設定する必要はありますか? またはそれはまったく不可能ですか?
現在、ラップトップ コンピューター (Win 7 x64 4GB RAM) を使用して開発を行っており、後でサーバー マシンにデプロイする予定です。
私はそれを修正しました!
もう 1 つの私の質問は、ストリームを使用して Blob データを TImage コンポーネントにロードすることです。
私はこのようにやっていますが、アクセス違反が発生します
ここにあなたが見るかもしれない私のコードがあります
DM->stImage->Active=true;
try {
TMemoryStream *ms=new TMemoryStream();
TStream *ps=DM->stImage->CreateBlobStream(DM->stImage->FieldByName("PHOTO") ,bmRead);
ms->Position=0;
ms->CopyFrom(ps,ps->Size);
ms->SaveToFile("c:\\1.jpg");
// imgPass->Picture->LoadFromStream(ms);
imgPass->Picture->Graphic->LoadFromStream(ps);
delete ms;
delete ps;
}
catch (Exception &e) {
ShowMessage(e.ToString());
}
保存できますが、 imgPass->Picture->Graphic->LoadFromStream(ps);
機能しません。何が問題になるでしょうか?