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

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

Програмное добавление [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;


Наверх

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