aspose.info
HU

DBF - dBase Database File

Frissítve

Mi az a DBF fájl?

A .dbf kiterjesztésű fájl egy adatbázis-fájl, amelyet a dBASE nevű adatbázis-kezelő rendszeralkalmazás használ. Kezdetben a dBASE adatbázis neve Project Vulcan volt; Wayne Ratliff indította el 1978-ban. A DBF fájltípust 1983-ban vezették be a dBASE II-vel. Több adatrekordot rendez tömb típusú mezőkkel. Az xBase adatbázisszoftver, amely a fájlformátumok széles skálájával való kompatibilitása miatt népszerű; támogatja a DBF fájlokat is.

DBF fájlformátum

A DBF fájlformátum a dBASE adatbázis-kezelő rendszerhez tartozik, de lehet, hogy kompatibilis az xBase vagy más DBMS szoftverekkel. A dbf fájl kezdeti verziója egy egyszerű táblázatból állt, amelyhez adatokat lehetett hozzáadni, módosítani, törölni vagy kinyomtatni az ASCII karakterkészlet használatával. Az idő múlásával a .dbf javult, és további fájlokat adtak hozzá az adatbázis-rendszer szolgáltatásainak és képességeinek bővítése érdekében.

A modern dBASE-ban a DBF fájl egy fejlécből, az adatrekordokból és az EOF (Fájl vége) jelölőből áll.

  • A fejléc információkat tartalmaz a fájlról, például a rekordok számát és a rekordokban használt mezők típusát.
  • A nyilvántartások a tényleges adatokat tartalmazzák.
  • A fájl végét egyetlen bájt jelöli, 0x1A értékkel.

Fájlfejléc

A dBase fájlfejléc elrendezése a következő táblázatban látható:

ByteTartalomJelentése
01 bájtÉrvényes dBASE DOS fájlhoz; A 0-2 bit a verziószámot, a 3-as bit a dBASE DOS-jegyzetfájl jelenlétét, a 4-6 bitek egy SQL-tábla jelenlétét jelzik, a 7-es bit bármely memofájl jelenlétét jelzi (akár dBASE m PLUS, akár dBASE DOS)
1–33 bájtAz utolsó frissítés dátuma; formátumban YYMMDD
4–732 bites számRekordok száma az adatbázisfájlban
8–916 bites számA fejlécben lévő bájtok száma
10–1116 bites számA rekord bájtok száma
12–132 bájtFenntartott; töltse ki 0
141 bájtHiányos tranzakciót jelző jelző[1. megjegyzés]
151 bájtTitkosítási jelző[2. megjegyzés]
16–2712 bájtFenntartva a dBASE for DOS számára többfelhasználós környezetben
281 bájtGyártási .mdx fájl jelző; 1, ha van éles .mdx fájl, 0, ha nincs
291 bájtNyelvi illesztőprogram-azonosító
30–312 bájtFenntartott; töltse ki 0
32–n [3. jegyzet][4. jegyzet]egyenként 32 bájtmezőleírók tömbje (a leírók elrendezését lásd alább)
n + 11 bájt0x0D, mint a mezőleíró tömblezáró
  • Az ISMARKEDO funkció ellenőrzi ezt a jelzőt (a TRANSACTION BEÁLLÍTÁSA 1-re állítja, END TRANSACTION és ROLLBACK visszaállítja 0-ra).
  • Ha ez a jelző 1-re van állítva, az Adatbázis titkosítva üzenet jelenik meg.
  • A mezők maximális száma 255.
  • n a mezőleíró tömb utolsó bájtját jelenti.

Mezőleíró tömb

A mezőleírók elrendezése dBASE-ban:

ByteTartalomJelentése
0–1011 bájtMezőnév ASCII-ben (nullával kitöltve)
111 bájtMezőtípus. Megengedett értékek: C, D, F, L, M vagy N (a jelentéseket lásd a következő táblázatban)
12–154 bájtFenntartva
161 bájtA mező hossza binárisan (maximum 254 (0xFE)).
171 bájtA mező decimális száma binárisan
18–192 bájtMunkaterület azonosító
201 bájtPélda
21–3010 bájtFenntartva
311 bájtGyártási MDX mezőjelző; 1, ha a mező tartalmaz indexcímkét az éles MDX-fájlban, 0, ha nincs

Adatbázis rekordok

Minden rekord törlési (1 bájtos) jelzővel kezdődik. A mezők mezőelválasztók nélküli rekordokba vannak csomagolva. Minden terepi adat ASCII. A mező típusától függően az alkalmazás további korlátozásokat ír elő. Íme a dBase mezőtípusai:

MezőtípusMnemonikusMit fogad el
CKarakterBármilyen ASCII-szöveg (a mező hosszáig szóközökkel kitömve)
DDátumSzámok és egy karakter a hónap, a nap és az év elválasztására (belül 8 számjegyben tárolva ÉÉÉÉHHNN formátumban)
FLebegőpontos-, ., 0–9 (jobbra igazítva, szóközzel kitömve)
LLogikaiY, y, N, n, T, t, F, f vagy ? (inicializálatlan állapotban)
MJegyzetBármilyen ASCII-szöveg (belső 10 számjegyként tárolva, amely egy .dbt blokkszámot jelent, jobbra igazítva, szóközökkel kitömve)
NNumerikus-, ., 0–9 (jobbra igazítva, szóközzel kitömve)

Referenciák

Lásd még