Voprosik
12-11-2005, 21:59
Есть такая задача: заполнить базу данных автоматически с помощью генератора. Поступил таким образом: по нажатию кнопки "Старт" на главной форме запускается процедура обработки следующего содержания:
procedure TForm1.Start_ButtonClick(Sender: TObject);
Var
I : Longint;
a1: Longint; {пусть в таблице 1 столбец}
Begin
a1 := 1;
i := 1;
Repeat
Table1.insert; {типа переходим в режим вставки}
Table1.last; {переходим в конец таблицы}
Table1.FieldByName('Stolb_1').AsInteger := a1; {пишем в столбец}
Table1.Post; {сохраняем}
a1 := a1 + 100; {изменяем переменную для следующей итерации}
i := i + 1;
Until i = 10; {10 строк}
end;
Такая програмка один раз сработала (таблицу я заполнил), потом очистил (также в цикле вызывая Table1.Delete до Table1.EOF, в конце вызвал метод Post). И вот тут появилась проблема!!! Теперь эту таблицу я заполнить не могу!!! Возможно я что-то менял в свойствах объектов (точно не помню), но теперь при нажатии кнопки "Старт" вылезает собщение "Table is not in Insert or Edit mode". ЧТО ДЕЛАТЬ?????
P.S. Если убрать строку Table1.insert, на нажатие кнопки - вообще никакой реакции.
procedure TForm1.Start_ButtonClick(Sender: TObject);
Var
I : Longint;
a1: Longint; {пусть в таблице 1 столбец}
Begin
a1 := 1;
i := 1;
Repeat
Table1.insert; {типа переходим в режим вставки}
Table1.last; {переходим в конец таблицы}
Table1.FieldByName('Stolb_1').AsInteger := a1; {пишем в столбец}
Table1.Post; {сохраняем}
a1 := a1 + 100; {изменяем переменную для следующей итерации}
i := i + 1;
Until i = 10; {10 строк}
end;
Такая програмка один раз сработала (таблицу я заполнил), потом очистил (также в цикле вызывая Table1.Delete до Table1.EOF, в конце вызвал метод Post). И вот тут появилась проблема!!! Теперь эту таблицу я заполнить не могу!!! Возможно я что-то менял в свойствах объектов (точно не помню), но теперь при нажатии кнопки "Старт" вылезает собщение "Table is not in Insert or Edit mode". ЧТО ДЕЛАТЬ?????
P.S. Если убрать строку Table1.insert, на нажатие кнопки - вообще никакой реакции.