Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ADO и количество записей


Alexey Nepryahin ©   (2003-07-29 10:55:00) 

Есть ли у ADOQuery (БД MS ACCESS) ограничение на количество добавляемых записей?
Делаю так

for i := 0 to 5000 do
begin
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add("INSERT INTO t1 (code_item) VALUES ("+IntToStr(i)+")");
ADOQuery.ExecSQL;
end;

на 1024(2048 т.д.) записи выдаёт ошибку что параметр (Parametr) задан неверно:((


AkaSaint   (2003-07-29 17:53:00) [1]

Рекомендую установить еще SP7 для Jet (сайт WindowsUpdate). По крайней мере, он устраняет совершенно точно существующую ошибку такого типа: если сделать от 1000 до 3000 раз Requery или Close/Open на TADODataSet, то вылетает ошибка "Cannot open any more tables." Возможно, твоя ситуация решается этим сервис-паком.Кстати, вероятно, ExecSQL делает Close/Open?


sniknik   (2003-07-29 11:35:00) [2]

а ключь в таблице есть?

без него возможны любые "чудеса".

перепиши код чуток, че скажет?
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add("INSERT INTO t1 (code_item) VALUES (:iVal);
for i := 0 to 5000 do begin
ADOQuery.Parameters[0].Value:= i;
ADOQuery.ExecSQL;
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо