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

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

Записи помеченные на удаление. [dBase, FoxPro]


Shark ©   (2005-05-06 12:43:00) 

Привет Всем! Такой вопрос у меня.
Есть таблица формата dbf, а ней есть записи, почененные на удаление.
Как из программы узнать общее кол-во записей в таблице, включая помеченные?
Заранее Благодарен!


Shark   (2005-05-06 14:27:00) [1]

Спасибо большое! :)
Все работает :)


ANB   (2005-05-06 13:26:00) [2]

type
TRDBFHeader = record
 Descriptor : Byte;
{0x03(3)простая таблица
 0x04(4)простая таблица
 0x05(5)простая таблица
 0x43(67)с мемо-полем .dbv
 0xB3(179)с мемо-полями .dbv .dbt
 0x83(131)с мемо-полем .dbt
 0x8B(139)с мемо-полем .dbt формат D4
 0x8E(142)SQL-таблица
 0xF5(245)с мемо полем .fmp}
 updYear : Byte;
 updMonth : Byte;
 updDay : Byte;
 RecordsCount : LongWord;
 HeaderSize : Word;
 RecordSize : Word;
 Reserv1 : Word;
 InTransaction : Byte;
 InCrypt : Byte;
 MultiUser : array [1..12] of Char;
 UseIndex : Byte;
{0x01 Используется индекс
 0x00 Индекс не используется}
 LangDriver : Byte;
{      n  Номер драйвера языка
 0x01(1)  кодовая страница 437 DOS USA
 0x02(2)  кодовая страница 850 DOS Multilang
 0x26(38) кодовая страница 866 DOS Russian
 0x57(87) кодовая страница 1251 Windows ANSI
 0xC8(200)кодовая страница 1250 Windows EE
 0x00(0)  игнорируется}
 Reserv2 : Word;
end;

Теперь читаешь в эту структуру из файла первые SizeOf() байт и считываешь в ней, что тебе надо. RecordsCount - количество записей.


Shark   (2005-05-06 13:17:00) [3]

хмм.. а можно чуть подробнее, пожалуйсто ;)


ANB   (2005-05-06 12:46:00) [4]

Самый быстрый способ - прочитать из заголовка dbf.


Наверх

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