Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 23:54 25.05.24 
Клубове/ Компютри и Интернет / Delphi Всички теми Следваща тема Пълен преглед*
Информация за клуба
Тема Re: Качване на голям файл в база данни ? [re: Daniel]
АвторИвaнчo (Нерегистриран) 
Публикувано22.12.06 11:28  



Предполагам, че CommandTimeout:=0 не е желателно да го използваш, макар че върши работа...

аз използва следния код, може да е модификация на нещо което си срещал, но върши работа, поне при мен...



procedure TForm1.Button4Click(Sender: TObject);
var
MemStream: TMemoryStream;

StrSQL, ConnectionString: string;
RecordSet: _RecordSet;

RecordsAffected: olevariant;
ImgActualSize: integer;
lngOffset, iSize: integer;
Data: olevariant;
P: PByteArray;

begin

MemStream := TMemoryStream.Create;

ImageTarget.Picture.Bitmap.SaveToStream(MemStream);

MemStream.Seek(0, 0);


StrSQL := 'SELECT ENTRYID, IMAGE_DATA FROM MAIL_USERS WHERE ENTRYID={00000001-0000-0000-0000-000000000000}';
ConnectionString :=
'Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source=C:\IMIADOAB.mdb';


Recordset := CoRecordset.Create;


Recordset.Open(StrSQL, ConnectionString, adOpenKeyset,
adLockOptimistic, adCmdText);

Data := VarArrayCreate([0, 4095], varByte);

iSize := 4096;
repeat


P := VarArrayLock(Data);
FillChar(P^, iSize, 0);

iSize := MemStream.Read(PByte(P)^, 4096);
VarArrayUnlock(Data);

if iSize > 0 then
begin

if iSize < 4096 then
VarArrayReDim(Data, iSize - 1); // must trim to the exact size
Recordset.Fields.Item['IMAGE_DATA'].AppendChunk(Data);
// append chunk to parameter object
end; // if


until iSize < 4096;

Data := Unassigned;
Recordset.Update(EmptyParam, EmptyParam);

Recordset := nil;


MemStream.Free;

end;




Цялата тема
ТемаАвторПубликувано
* Качване на голям файл в база данни ? Daniel   19.12.06 15:07
. * Re: Качване на голям файл в база данни ? Йopдaн   20.12.06 14:38
. * Re: Качване на голям файл в база данни ? Daniel   21.12.06 12:50
. * Re: Качване на голям файл в база данни ? Ивaнчo   21.12.06 22:23
. * Re: Качване на голям файл в база данни ? Daniel   22.12.06 10:37
. * Re: Качване на голям файл в база данни ? Ивaнчo   22.12.06 11:28
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.