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

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

Как удалить запись? [D5, dBase, FoxPro]


Bocman ©   (2002-06-17 12:21:00) 

В SQL запрсе я удаляю группу записей, после этого вывожу все содержимое таблицы, записей нет, но если открыть эту таблицу не через Дельфю, а например, через winDBFview или из DN, то записи существуют, только помечены точкой(или звездочкой или т.п.)
Как удалить записи окончательно?


Bocman   (2002-06-17 13:55:00) [1]

А какими новыми?
Мне просто надо удалить некоторые записи и все....


Anatoly Podgoretsky   (2002-06-17 13:31:00) [2]

dbiUndeleteRecord


KSergey   (2002-06-17 13:15:00) [3]

Есть, правда, нюансик: упаковка требует монопольного доступа к файлам БД. Более уместно было бы повторно использовать удаленные записи, т.е. при добавлении записи алгоритм такой:

еслиесть удаленная запись - снимаем с нее признак удаления и заполняем поля новыми данными
еслиудаленных записей нет - добавляем новую

Как снять признак удаления в Delphi - не знаю, как-то явно можно. Но в FoxPro (Clipper) именно такая техника для сетевых БД и используется (формат таблиц именно dbf)


VAleksey   (2002-06-17 13:01:00) [4]

хоть query , хоть не квери, а паковать все одно надо. Иначе никак.


Bocman   (2002-06-17 12:34:00) [5]

Збыл сказать, я юзаю Query


Vovik   (2002-06-17 12:28:00) [6]

Table1.Exclusive := True
Table1.Open ;
Table1.Pack ;
Table1.Close ;
Table1.Exclusive := False;


Anatoly Podgoretsky   (2002-06-17 12:25:00) [7]

dbiPackTable


Наверх

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