dBase

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

dBase byl první masověji rozšířený systém řízení báze dat (SŘBD, DBMS) pro mikropočítače, který byl publikován americkou firmou Ashton-Tate pro CP/M. A později pro Apple II, Apple Macintosh, UNIX[1], VMS[2] a IBM PC pod DOS,kde se na mnoho let stal jedním z nejprodávanějších softwarových titulů. dBase pomalu úspěšně přecházel pod Microsoft Windows a pozvolna uvolňoval podíl na trhu svým konkurentům Paradox, Clipper, FlagShip, FoxPro a Microsoft Access. dBase byl prodán Borlandu v roce 1991, který prodal práva k této sortimentní skupině v roce 1999 tehdy nově vzniklé společnosti dBase Inc. V roce 2004 dBase Inc. změnila svůj název na dataBased Intelligence, Inc.

Vznik dBase[editovat | editovat zdroj]

Původním vývojářem dBase byl Wayne Ratliff.[3] V roce 1978 Ratliff napsal databázový program v assembleru pro mikropočítače založené na CP/M, aby mu pomohl vyhrát kancelářskou fotbalovou sázku. Založil ho na JPLDIS (Jet Propulsion Laboratory Display Information System) Jeba Longa a nazval ho "Vulcan" po panu Spockovi ze seriálu Star Trek. Podle Ratliffa byl jazyk použitý v JPLDIS jednoduchý. Jsou zde známky toho, že JPLDIS byl ovlivněn mainframovským databázovým produktem zvaným RETRIEVE.

Na počátku 80. let 20. století, George Tate z Ashton-Tate uzavřel s Ratliffem obchodní dohodu. Vulcan se přejmenoval na dBase a software rychle vzrostl na popularitě.

Nedávná historie[editovat | editovat zdroj]

dBase byl zařazen mezi moderní objektově orientované jazyky, které běží na 32 bitových Windows. Může být použit k výstavbě aplikací se širokým využitím, např. webové aplikace provozované na Windows serveru. dBase má přístup k většině moderních databází pomocí rozhraní ODBC.

xBase[editovat | editovat zdroj]

Počátkem poloviny osmdesátých let 20. století mnoho jiných společností přišlo s vlastními variantami daného produktu a jazyka. Tyto zahrnovaly FoxPro (nyní Visual FoxPro), Arago, Force, dbFast, dbXL, Quicksilver, Clipper, Xbase++, FlagShip, Recital Terminal Developer, CodeBase, MultiBase a Harbour/XHarbour. Dohromady jsou označovány jako xBase.

.dbf[editovat | editovat zdroj]

Výchozím formátem pro dBase je soubor .dbf. Ten se hojně využívá v mnoha dalších aplikacích, kde je potřeba jednoduchý formát pro uchování strukturovaných dat. V současné době mu ale v tomto ohledu konkuruje SQLite.

Pro každou tabulku byl jeden soubor .dbf. Extra soubory dBase vytvářela pro sloupce typu memo (v sourobu .dbt; viz dále) a pro index (.idx) nebo indexy (.mdx). Organizace tabulek do databází na úrovni SŘBD neexistovala, stejně jako např. pohledy, cizí klíče, triggery a jiné prvky pozdějších databázových systémů. Přístup více uživatelů řešily jednotlivé aplikace na úrovni operačního systému. Přístupové údaje pro přístup k tabulkám chyběly.

Jméno tabulky bylo určeno jménem souboru. Soubor na začátku obsahoval definici sloupců, následovanou jednotlivými řádky. Sloupce mohly mít název dlouhý maximálně 11 znaků a mohly být těchto typů (první písmeno je kód typu, používaný v souboru):

  • C – řetězec (v SQL typ char) se specifikovanou délkou (maximálně 255 znaků)
  • L – logická hodnota (s hodnotami Y nebo T pro pravdu, N nebo F pro nepravdu)
  • N – číslo, u kterého lze specifikovat maximální počet číslic
  • F – číslo, u kterého lze specifikovat maximální počet desetinných míst
  • D – datum (v SQL typ date) od roku 0000 do roku 9999
  • M – memo (v SQL typ text) text do délky 64 KiB, ukládaný do

Řádky měly stejnou délku (kratší řetězce se doplňovaly \0 zprava a čísla nulami zleva), takže šly rychle procházet. Každý záznam obsahoval indikátor platnosti. Mazání záznamů sestávalo samotné indikace neplatnosti. Tím ale vznikala fragmentace. Pro optimalizaci velikosti se tedy dal soubor zabalit/spakovat (program v něm prošel všechny záznamy a ty platné záznamy srotil k začátku souboru a zbytek souboru „usekl“).

Obsah souborů .dbt je rozsekaný na základní bloky o délce 512 bajtů. Tyto bloky jsou interně číslovány (počínaje nulou) a v souboru .dbf je u sloupců typu memo uloženo, kde (na bloku jakého čísla) začíná odpovídající text. Text je vždy doplněný na nejbližší násobek čísla 512.

Reference[editovat | editovat zdroj]

V tomto článku byl použit překlad textu z článku DBase na anglické Wikipedii.

  1. Borland®/Inprise®/AshtonTate®/dBASE Inc.® dBASE® for Sale [online]. . Dostupné online.  
  2. dBASE IV for VMS and UNIX : a technical support approach [online]. . Dostupné online.  
  3. The History of FoxPro [online]. . Dostupné online.