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

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

удаление записи в таблице dBase [D6, dBase, FoxPro]


reticon ©   (2003-04-14 12:21:00) 

Доброго времени суток!

Подскажите как в таблице dBase удалить запись - делаю Table.Delete, вроде бы удаляет, но на самом деле только помечает как удаленная запись. Спасибо.


reticon   (2003-04-15 00:04:00) [1]

Упаковка мне не нужна, мне нужно просто удалять записи. Делаю так: Dbf1.PackTable (компонент TDbf) - записи удаляются нормально, все хорошо только на диске в той же папке где и файл базы создается столько копий этого файла, сколько раз было удаление записией. Что это еще такое?


Соловьев   (2003-04-14 12:26:00) [2]

из BDE32.hlp

function DbiPackTable (hDb: hDBIDb; hCursor: hDBICur; pszTableName: PChar; pszDriverType: PChar; bRegenIdxs: Bool): DBIResult stdcall;

пример:
Check(DbiPackTable(Table.DBHandle, Table.Handle, nil, szDBASE, True))


Apachi   (2003-04-14 12:26:00) [3]

Вот видел такой код но сам еще не проверял

Table1.Close ;
Table1.Exclusive := TRUE ;
Table1.Open ;
DbiPackTable( Table1.DBHandle, Table1.Handle, nil, nil, TRUE ) ;


Anatoly Podgoretsky   (2003-04-14 12:26:00) [4]

Ну так практически в любых базах, запись не удаляется физически, но dBase имеет уникадьную возможность востановить удаленную запись.
Моежет тебе нужна упаковка таблицы?


Наверх

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