PDA

View Full Version : ثبت فایل از طریق C++Builderدر SQL



el_afrooz
شنبه 20 خرداد 1385, 08:47 صبح
سلام. لطفاً راهنمایی کنید چطور می تونم فایل تصویر رو مستقیم در SQL ثبت کنم در محیط C++Builder?

sasan_vm
شنبه 20 خرداد 1385, 19:27 عصر
سلام

با استفاده از BlobField براحتی انجام میشود:



TStream * stream = NULL;
TFileStream * file = NULL;
try
{
// Load image
file = new TFileStream( "\\My_Favorite_File (file://\\My_Favorite_File)", fmOpenRead);
// Create blob field
TStream * stream = ADOTable1->CreateBlobStream(ADOTable1->FieldByName("MyField"), bmWrite);
ADOTable1->Edit();
stream->CopyFrom(file, file->Size);
ADOTable1->Post();
}
__finally
{
if (file) delete file;
if (stream) delete stream;
}

el_afrooz
یک شنبه 21 خرداد 1385, 13:40 عصر
با تشکر از شما ، اینکه Edit کردید یعنی من قبلاً باید رکورد مربوط به اون رو ایجاد کنم بعد روی اون Edit کنم و فایل رو کپی کنم؟

sasan_vm
یک شنبه 21 خرداد 1385, 18:57 عصر
سلام

اگر قبلا رکورد را در حالت Edit قرار داده اید این کد دیگر نیازی نیست . اگر رکورد جدید
ایجاد میکنید به جای Edit از Append یا Insert استفاده کنید.