![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
вставка данных в dbf [D7, MSSQL, Paradox]
Lexiy © (2006-03-21 10:45:00)вот таким образом загоняю в dbf файл данные
var
i, j: integer;
Begin
try
ProgressBarWork.Step := 1;
ProgressBarWork.Position := 0;
Querys.First;
if not Querys.Eof then
begin
ADOTableDbf.TableName := 'bnk';
ADOTableDbf.Active := True;
i := Querys.FieldCount - 1;
Querys.First;
while not Querys.eof do
begin
ADOTableDbf.Insert;
for j:=0 to i do
begin
ADOTableDbf.Fields[j].Value := Querys.Fields[j].Value;
end;
ProgressBarWork.StepIt;
Querys.Next;
end;
end
else
begin
Application.MessageBox('Нет данных для загрузки в файл', 'Загрузка');
end;
ADOTableDbf.Post;
Result := True;
except
Result := False;
загоняется порядка 530-540 строк а дальше баг .... в чем ошибка ? проверял по отдельности ... записей у меня приблизительно 600 поделил по полам ...поочередно ... т.е. открыл программу загнал трист закрыл программу открыл еще раз загнал остаток ... прекрасно не вопрос ... а вот сразу не понятки ... может кто знает почему ?
Сергей М. (2006-03-21 13:12:00) [21]
> sniknik © (21.03.06 12:30) [7]
> вовсе не обязательно
"следует" <> "обязательно требуется"
А по поводу "магического" числа 530 - оно могло быть и другим .. Зависит от размера записи в байтах .. Это - особенности реализации DBF-движка
sniknik (2006-03-21 12:30:00) [22]> Post() следует вызывать после каждого Insert() !
вовсе не обязательно, одного раза в конце цикла достаточно (желательно с проверкой на состояние датасета), т.к. он и так вызывается многими командами автоматом (в самом Insert проверка и вызов например есть).
Сергей М. (2006-03-21 12:13:00) [23]Post() следует вызывать после каждогоInsert() !
stone (2006-03-21 11:55:00) [24]
> вот таким образом загоняю в dbf файл данные
insert into OpenDataSource (''Microsoft.Jet.OLEDB.4.0'',''Data Source="C:\MyDir";Extended properties=dBase IV'')...MyTable (Field1...) select Field1... from MyTable
Lexiy (2006-03-21 11:12:00) [25]ну хорошо ... может тогда кто знает а как отпустить файл dbf после всех вот этих вставок ... просто если не закрываю мою програмку я пытаюсь его просмотреть мне говорят что он занят ... и бла бла бла можно только почитать
Lexiy (2006-03-21 11:04:00) [26]иногда бывает Р95 или 93
непонятный момент самое главное исключительно на количестве записей больше 530
Lexiy (2006-03-21 11:03:00) [27]да постил я после инсерта ... это просто после всех моих разбирательств на место не поставил .. спасибо это исправил но ошибка все равно осталось
ошибка звучит так
Project CreateDbf.exe raised exception class EOleException with message '[Microsoft][ODBC Visual FoxPro Driver]Variable 'Q535P92' is not found
Sergey13 (2006-03-21 10:57:00) [28]> а дальше баг ....
Какой?
>в чем ошибка ?
Какая?
Не мешало бы постить после инсерта.