Pascal a formát DBFTi, co programujete v jazyce Pascal již nějakou chvíli, tak
jistě víte, že tento jazyk nabízí programátorům celkem solidní práci s datovými
soubory. Datový soubor definujete v hlavičce programu, má nějakou pevně danou
strukturu a s takto deklarovaným souborem můžete ve vašem programu pracovat
celkem pěkně. Struktura souboru .dbfDatový soubor typu .dbf má přesně definovanou strukturu. Skládá se z
hlavičky a bloku dat. Samotná hlavička se skládá z globálních údajů
popisující dbf soubor a ze seznamu, ve kterém je zahrnuty popisy jednotlivých
položek v databázovém souboru. Za tímto seznamem (a tedy už koncem hlavičky)
následuje datová oblast, kde jsou za sebou 1. záznam, 2. záznam, ... až poslední
záznam v databázovém souboru. Všechny záznamy mají stejnou délku.
Globální údajeV těchto údajích naleznete informace o souboru: existencích Memo položek, datum poslední aktualizace, počet záznamů, velikost hlavičky, atd. Tyto údaje jsou obsaženy v prvních 32 bajtech databázového souboru. Přesný popis obsahuje následující tabulka:
Popis položkyV této části najdete informace týkající se jedné položky záznamu: např. typ položky, délka položky, její poloha, aj. Popis každé položky zabírá právě 32 bajtů. Základní typy položek jsou:
Blok popisu položek:
Jak manipulovat se záznamyV první řadě je potřeba načíst hlavičku databázového souboru a zpracovat
jednotlivé údaje. Nejjednodušší je asi načíst hlavičku do pole záznamů. Typ
záznamu by měl mít strukturu popisu položky v záznamu. (viz předchozí tabulka)
Tím máme potřebné údaje o položkách záznamu. Z velikosti hlavičky můžeme snadno
odvodit polohu prvního záznamu. Vzhledem k tomu, že záznamy mají stejnou
velikost, lze pak jakýkoliv záznam v souboru nalézt pomocí jednoduché "adresy":
Velikost_hlavička + N x Velikost_záznamu.
Pokud chcete nějaký záznam označit za zrušený, provedete to tak, že první bajt záznamu přepíšete znakem #42. Tento záznam lze obnovit opěrovným přepsáním prvního bajtu znakem #32. Nové záznamy se zapisují na konec souboru, přičemž je nutné dodržet psaní značky konce souboru za poslední záznam. Při ukončení práce s databázovým souborem je vhodné aktualizovat hlavičku soubotu (posl. modifikace, počet záznamů, aj.) |
WEBovský
počítadlo spočítalo, že si číslo
|