Вниз
Скачать: CL | DM;

Вставка большого файла в базу Access   Найти похожие ветки 

← →
Arkady ©   (2003-04-28 08:23) [0]

Имеется таблица (имя t1) Access 2000 с полем (имя bin), имеющим тип «поле объекта OLE». При выполнении команды t1bin.LoadFromFile(‘c:\filename.dat’), если файл ‘c:\filename.dat’ больше 10Мб, запись в таблицу не производится. Выводится сообщение:
Out of memory.
Затем:
Unexpected variant error.
При файлах до 10 Мбайт информация записывается нормально.
Почему возникают эти ошибки?


← →
Arkady ©   (2003-04-28 09:31) [1]

Работа с базой данных через ADO.
t1: TADODataSet;
t1bin: TBlobField


← →
Arkady ©   (2003-04-28 11:26) [2]

Никто не сталкивался с подобной проблемой? Может можно воспользоваться каким-то другим методом вставки данных в поле OLE? Теоретически размер двоичных данных в данном поле ограничивается доступным дисковым пространством. Помогите, пожалуйста.


← →
KoluChi ©   (2003-04-28 12:49) [3]

Попробуй, сначала прочитать файл в поток, а затем загрузить в BLOB.
Проверь сколько осталось места на диске и свободную оперативную память.


← →
KoluChi ©   (2003-04-28 12:52) [4]

function AddFile(FileName: String): Boolean;
var
ArcName: String;
BS: TADOBLOBStream;
FS: TFileStream;
begin
Result := false;
ArcName := ExtractFileName(FileName);
if DatabaseArchiveExists(ArcName) then Exit;
with Query_ADD do
begin
Close();
FS := TFileStream.Create(FileName, fmOpenRead + fmShareDenyNone);
FS.Position := 0;
Parameters.ParamByName("PARAM1").Value := ArcName;
Parameters.ParamByName("PARAM2").LoadFromStream(FS, ftBLOB)
ExecSQL();
Close();
FS.Free();
Result := true;
end;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.014 c
14-59929
Тумар
2003-04-27 18:35
2003.05.19
Что вы знаете о своей фамилии???


4-59990
DimG
2003-03-19 16:16
2003.05.19
как отловить смену положения курсора в TEdit?


14-59890
СлБ
2003-04-29 14:13
2003.05.19
Компонент с Rx


3-59616
ligor
2003-04-28 22:13
2003.05.19
FibPlus


1-59655
mixamixa
2003-05-07 11:51
2003.05.19
Как запустить *.hlp? По нажатию Button.




   Наверх