![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Програмное добавление [D6, Paradox]
Начинающий програмер © (2002-11-27 16:17:00)Здравствуйте!
У меня есть база данных(Paradox) и нада добавить в неё данные
програмно. Как это сделать(типа такого Navigation1.Insert).
Спасибо!
MsGuns (2002-11-27 22:11:00) [1]Refresh нужен для отображения ЧУЖИХ изменений, а чтобы чужие увидели ТВОИ изменения (как в данном случае), надо FlushBuffers (Хотя для Парадокса, если все настройки верны и не используется буферизация, это в общем случае не обязательно)
Wolf226 (2002-11-27 17:59:00) [2]2 DN
Вот так точно лажа наверно выйдет.
Я вообще по Paradox не очень, но я думал, что после Post-a refresh не нужен.
Ну уж явно его недо в BeforeInsert вставлять. Уж если нужен он, то в AfterPost
DN (2002-11-27 17:45:00) [3]>>Wolf226 ©
Согласен, лучше вынести отдельно
procedure TForm1.Table1BeforeInsert(DataSet: TDataSet);
begin
Table1.Refresh;
end;
Wolf226 (2002-11-27 17:40:00) [4]2 DN.
Зачем Table1.Refresh?
Wolf226 (2002-11-27 17:38:00) [5]with Table1 do
begin
insert;
fieldvalues["name"]:="Bla-bla";
fieldvalues["sname"]:="Bla";
post;
end;
C Query1 тоже самое, только UpdateSQL нужен.
Можно также метод InsertRecord использовать (но лучше не надо)
DN (2002-11-27 17:35:00) [6]
Table1.Append;
...
Table1.FieldByName("Pole1").AsString:=A;
Table1.FieldByName("Pole2").Asinteger:=B;
Table1.FieldByName("Pole3").AsBoolean:=C;
...
Table1.Post;
Table1.Refresh;