2. Desktop databáze

V této kapitole se seznámíme s používáním Desktopu databáze. Spouštíme jej volbou Start | Programs | Borland C++ Builder | Database Desktop. Desktop databáze umožňuje vytvářet, zobrazovat, řadit, modifikovat a dotazovat se na data tabulek ve formátech Paradoxu, dBASE a SQL. Volba Edit | Paste Link umožňuje vytvářet živé vazby na data v jiných aplikacích pomocí DDE (Dynamic Data Exchange). Nejprve se seznámíme s některými základními pojmy (klíče, indexy a vazby).
S Desktopem databáze se dále seznámíme v těchto bodech:

Klíče a indexy

Můžeme spojovat tabulky definováním vzájemného vztahu položky v jedné tabulce k položce v jiné tabulce. Tyto položky musí splňovat jisté požadavky. Nejdůležitější požadavek je ten, že jedna nebo obě tyto položky musí mít indexy. Index je soubor, který Desktop databáze používá k uložení informací o umístění záznamů v tabulce. To usnadňuje údržbu řadícího pořadí tabulky a seskupování podobných hodnot.
Tabulky Paradoxu a dBASE mohou obsahovat indexy pro specifikaci pořadí, ve kterém jsou záznamy zpřístupňovány. Indexy ale v tabulkách Paradoxu a dBASE pracují různě. Indexy mohou být primární a sekundární. V tabulkách Paradoxu, primární indexy jsou někdy nazývány klíče.
Tabulky Paradoxu - Desktop databáze organizuje záznamy podle hodnot v klíčové položce. Je to primární index tabulky. Implicitně, všechny indexy organizují a zpřístupňují data ve vzestupném pořadí. Když pro tabulku je definován složený klíč, pak Desktop databáze vytváří primární složený index, který organizuje záznamy podle první položky klíče (v závislosti na struktuře tabulky), pak další atd. V tabulkách Paradoxu, sekundární index definuje alternativní pohled na pořadí záznamů. Fyzické umístění záznamů v tabulce se nemění.
Sekundární indexy jsou také používány pro dotazy, zvyšování výkonnosti a zřizování vazeb mezi tabulkami.
Tabulky dBASE - Indexy jsou používány k organizování záznamů v tabulce podle hodnot v jedné nebo více položkách.
Tabulky SQL - Tabulky SQL používají unikátní a neunikátní indexy, ale nepoužívají primární klíč tak, jako tabulky Paradoxu. Pro tabulku SQL můžeme vytvořit více indexů; pro každý index specifikujeme zda je unikátní nebo neunikátní. Indexy SQL na rozdíl od indexů Paradoxu a dBASE, jsou vždy udržované. Desktop databáze můžeme použít k vytvoření a modifikaci indexů pro tabulku SQL, ale nemůžeme specifikovat které indexy budou v Desktopu databáze používány. Když používáme tabulku SQL v Desktopu databáze, pak tabulka musí mít unikátní index (primární klíč). Pokud tabulka nemá unikátní index, pak nelze editovat data tabulky.

Tabulka Paradoxu může mít definováno mnoho indexů, ale obvykle jeden z nich identifikujeme jako primární index. V tabulkách Paradoxu je primární index nazýván klíč. Tabulka, která má definován klíč je klíčovaná tabulka. Když vytváříme klíč, pak Desktop databáze vnucuje pravidla pro data, která mohou být obsažena v klíčovaných položkách:

Jestliže definujeme klíč pro tabulku, která již obsahuje data, pak Desktop databáze přemístí záznamy tabulky do správného pořadí. Nově přidávané záznamy jsou přesunuty na jejich správnou pozici v seřazené tabulce.
Pokud použijeme více než jednu položku v klíči, pak použijeme název složený klíč.
Když vytvoříme index, pak Desktop databáze vytváří jeden nebo více souborů, které obsahují hodnoty položek indexů a jejich umístění. Desktop databáze se odkazuje na soubor indexů, když lokalizujeme a zobrazujeme záznamy. To platí jak pro primární indexy (klíče) tak i pro sekundární indexy.
Sekundární index je položka nebo skupina položek, které definují: Tabulka může mít více než jeden sekundární index. Sekundární index nelze vytvářet na položkách typů memo, binary, OLE, graphics, logical nebo bytes. Když použijeme sekundární index, pak změníme pouze zobrazovací pořadí záznamů. Fyzické umístění záznamů se nemění.

Seznámení s vazbami

Vazba tabulek definuje vzájemný vztah mezi položkou v jedné tabulce a položkou jiné tabulky. V Desktopu databáze říkáme, že hodnota v položce jedné tabulky odpovídá hodnotě v indexované položce jiné tabulky. Je to způsob svázání dat jedné tabulky s daty jiné.
Jedna nebo více položek použité k definování vazby musí být indexované, protože Desktop databáze musí vyhledat hodnotu z položky. Bez indexů tyto hodnoty mohou být kdekoliv. Když je použit index, pak Desktop databáze má udržovaný soubor se seznamem umístění všech záznamů v tabulce. Desktop databáze pak může nalézt svázané záznamy rychle a efektivně.

Objekty Desktopu databáze

V Desktopu databáze, databázové komponenty, které ukládají, zobrazují, získávají a prezentují data se nazývají objekty. Hlavní objekty se kterými pracujeme v Desktopu databáze jsou tabulky, dotazy a SQL soubory. Desktop databáze používá objekty k ukládání, zobrazování a prezentaci informací. Objekty zahrnují: Desktop databáze používá ikony objektů k jejich reprezentaci, když jsou minimalizované.
Desktop databáze ukládá data v tabulkách. Tabulky mají řádky a sloupce. Každý řádek obsahuje informace o jistém prvku (jako je osoba, místo nebo věc). Nazýváme je záznamy. Každý sloupec obsahuje jednu kategorii dat, které tvoří záznam. Nazýváme je položky.
Jisté operace Desktopu databáze vytvářejí dočasné tabulky, které existují pouze dokud nezměníme privátní adresář nebo neukončíme sezení Desktopu databáze. Desktop databáze ukládá všechny dočasné tabulky do našeho privátního adresáře. Dočasnou tabulku můžeme editovat a používat v dotazech jako libovolnou jinou tabulku. Pokud chceme některou z těchto tabulek uložit, pak ji musíme přejmenovat.
Pozor: Nesmíme použít žádné rezervované jméno pro dočasné tabulky jako jméno vytvářeného objektu. Pokud použijeme jméno dočasného objektu, pak Desktop databáze zruší náš objekt při změně privátního adresáře nebo při ukončení sezení Desktopu databáze.
Následující tabulka uvádí seznam dočasných tabulek Desktopu databáze vytvářených při provádění jistých operací. Desktop databáze umisťuje tyto tabulky do privátního adresáře.
 
Jméno Vytvořeno během Obsahuje
Answer Dotazu Výsledek dotazu
Changed Dotaz CHANGETO nebo operace Add Nezměněná kopie změněných záznamů
Deleted Dotaz DELETE Zrušené záznamy
Errorchg Dotaz CHANGETO Záznamy, které nemohly být změněny
Errordel Dotaz DELETE Záznamy, které nemohly být zrušeny
Errorins Dotaz INSERT Záznamy, které nemohly být vloženy
Inserted Dotaz INSERT Vložené záznamy
Keyviol* Operace Restructure nebo Add  Záznamy s duplicitní hodnotou klíče a záznamy, které porušují pravidla referenční integrity
Problems* Operace Restructure nebo Import Nekonvertované záznamy
* Pokud provedeme více než jednu operaci, jejich výsledky jsou uloženy v této dočasné tabulce v jednom sezení, pak Desktop Databáze vytváří další dočasné tabulky se stejným jménem, ke kterému je připojeno pro rozlišení číslo. Např. Keyviol1, Keyviol2, atd.

Dotaz Desktopu databáze je dotaz, kterým se ptáme na data v našich tabulkách. Dotazy můžeme použít k:

Desktop databáze poskytuje snadný způsob pro dotazování na data v tabulce. V okně dotazu Desktopu databáze, můžeme volit, které tabulky chceme použít pro dotazování. Potom zadáme příklad požadovaných dat a Desktop databáze se dotazuje na základě našeho příkladu. To se nazývá Dotaz podle příkladu (QBE).
Desktop databáze poskytuje užitečné živá zobrazení dotazů, které umožňují definovat a spouštět dotazy, které generují živé editovatelné pohledy na data popsaná v dotazu. Když editujeme živá zobrazení dotazu, pak aktuálně měníme data v dotazovaných tabulkách. Živá zobrazení dotazů omezují naše pohledy na data se kterými potřebujeme pracovat.
Dotaz je způsob pro získávání informací z našich tabulek. Dotazy jsou obvykle ve formě otázky. Např. můžeme chtít zjistit: Můžeme používat dotazy provádějící výpočty na našich datech. Můžeme také vkládat, rušit a měnit záznamy pomocí dotazů INSERT, DELETE a CHANGETO.
Implicitně Desktop databáze výsledky dotazu ukládá do tabulky Answer. Tuto tabulku můžeme editovat, tím ale neměníme původní tabulky zapojené do dotazu. Pokud bychom chtěly měnit tato původní data, pak můžeme vytvořit živý dotaz.
Soubor SQL je objekt, který obsahuje kód zapsaný v SQL. K zápisu SQL k provedení operací na vzdálených datech můžeme použít Editor SQL.
V následující tabulce je uveden seznam přípon souborů používaných v Desktopu databáze:
 
Přípona Typ objektu
.CFG Konfigurační soubor
.DB  Tabulka Paradoxu
.DBF Tabulka dBASE
.DBT Položky Memo pro tabulku dBASE
.FAM Seznam svázaných souborů (podobně jako .TV)
.INI  Konfigurační soubor
.LCK Soubor zámků
.MB Položky Memo pro tabulku Paradoxu
.MDX Udržované indexy tabulky dBASE
.NDX Neudržovatelné indexy tabulky dBASE
.PX Primární index tabulky Paradoxu
.QBE Uložený dotaz
.SQL Uložený SQL soubor
.TV  Nastavení pohledu pro tabulku Paradoxu
.TVF Nastavení pohledu pro tabulku dBASE
.TVS Nastavení pohledu pro SQL data
.VAL Pravidla přípustnosti a referenční integrity pro tabulku Paradoxu
.Xnn Sekundární index pro tabulku Paradoxu
.Ynn Sekundární index pro tabulku Paradoxu
.XGn Sekundární složený index pro tabulku Paradoxu
.YGn Sekundární složený index pro tabulku Paradoxu

Okno Desktopu databáze

Okno Desktopu databáze je první věcí, kterou vidíme, když spustíme Desktop databáze. Je to primární pracovní plocha Desktopu databáze. V tomto oknu můžeme: Každý typ hlavních objektů v Desktopu databáze (tabulky nebo dotazy) se zobrazují ve svém vlastním typu okna. Např. tabulky se vždy zobrazují v okně Table a dotazy se vždy zobrazují v okně Query.
Okno Desktopu databáze je nadřízeným oknem Desktopu databáze. Všechna ostatní okna jsou podřízenými okny, což znamená, že nikdy nemohou existovat samostatně. Každý typ okna má nějaké specializované příkazy, které jsou aplikovatelné pouze na tento typ okna. Všechny příkazy a služby okna Desktopu databáze zůstávají dostupné v podřízených oknech.
V Desktopu databáze jsou dostupné tyto objekty oken: Okno Query můžeme použít k získávání informací z našich tabulek. Např. můžeme zjistit, které objednávky zatím nejsou vyřízeny. Můžeme také použít dotaz, který provádí výpočty na našich datech. Okno Query se zobrazí, když otevřeme soubor .QBE nebo vytváříme nový.
Editor SQL je plnohodnotný textový editor, který obsahuje barevné zvýrazňování syntaxe, odsazování a mnoho dalších služeb. Okno Editoru SQL můžeme použít k přímému zadávání, provádění a ukládání příkazů SQL. Příkazy SQL můžeme specifikovat v několika dialektech. Testování syntaxe a provádění příkazů provádí server SQL bez zásahů Desktopu databáze.
Editor SQL se zobrazí, když otevřeme nebo vytváříme nový soubor SQL. Při práci s Editorem SQL můžeme používat klávesnici nebo paletu nástrojů Editoru SQL. Implicitně klíčová slova jsou zobrazována tučně a komentáře kurzívou. Barevné a textové atributy lze změnit v dialogovém okně Editor Preferences na stránce Color (volba Edit | Editor Preferences). Ve stejném dialogovém okně lze zadávat i další editační volby.
Okno Table se zobrazí, když otevřeme nebo vytváříme novou tabulku Paradoxu, dBASE nebo SQL v Desktopu databáze. Toto okno je také možno použít k zadávání dat a restrukturalizaci tabulek.

Pod nabídkou v okně je kolekce tlačítek nazvaná Paleta nástrojů. Zobrazená Paleta nástrojů závisí na aktivním objektu v okně Desktopu databáze. Např. pokud je aktivní tabulka, pak tlačítka Standardní palety nástrojů nám pomáhají provádět úkoly s tabulkou.
Můžeme zobrazit Standardní nebo Globální Paletu nástrojů. Která paleta je zobrazena, určujeme v místní nabídce Palety nástrojů.
Standardní Paleta nástrojů je obvykle zobrazena bezprostředně pod nabídkou. Tato Paleta nástrojů obsahuje tlačítka, které odpovídají příkazům nabídky pro současné aktivní okno. Pokud změníme zaostření z jednoho okna na jiné, pak se změní tlačítka na Standardní paletě nástrojů.
Na Globální paletě nástrojů jsou umístěna tlačítka pro volby v nabídce, které nezávisí na otevřeném okně. Paleta se tedy při změně okna nemění. Tato paleta implicitně není zobrazena.
Stavový řádek zobrazuje informace o Desktopu databáze a o prováděných akcích. Stavový řádek je rozdělen na několik oblastí.
Desktop databáze ukončujeme běžným způsobem, např. volbou File | Exit.

Adresáře a přezdívky

Pracovní adresář Desktopu databáze je adresář, který Desktop databáze implicitně používá k otevírání a ukládání souborů. Když instalujeme Desktop databáze na lokální disk, pak je vytvořen adresář WorkDir (je to implicitní pracovní adresář). Pokud potřebujeme, pak tento adresář můžeme změnit (volbou File | Working Directory).
Ve víceuživatelském prostředí, musíme umístit své dočasné objekty do privátního adresáře. Implicitní privátní adresář je vytvořen při instalaci Desktopu databáze. Můžeme jej také změnit (volba File | Private Directory).
Přezdívka je jméno, které můžeme přiřadit jako zkratku k adresáři. Implicitně, pracovní adresář má přezdívku :WORK: a privátní adresář přezdívku :PRIV:.
Poznámka: Když změníme pracovní nebo privátní adresář nebo nastavení přezdívek, pak Desktop databáze automaticky ukládá změny.
Kdykoliv můžeme použít Správce přezdívek k: Předpokládejme, že máme kolekci tabulek, textových souborů a grafiky v jednom adresáři. Pomocí Správce přezdívek můžeme tomuto adresáři přiřadit nějakou přezdívku (např. :PLAN:) a potom můžeme tuto přezdívku používat namísto zápisu úplné adresářové cesty.
Přezdívky poskytují několik výhod: nemusíme zapisovat dlouhé adresářové cesty, pomocí přezdívek se můžeme připojit nebo odpojit od vzdáleného databázového serveru a přezdívku lze kdykoliv změnit.
Jsou dva typy přezdívek: veřejné přezdívky a projektové přezdívky. Když změníme pracovní adresář, pak Desktop databáze uvolňuje všechny projektové přezdívky přiřazené ke starému pracovnímu adresáři a zavádí projektové přezdívky, které jsou specifické pro nový pracovní adresář. Veřejné přezdívky jsou dostupné z libovolného adresáře. Pokud projektová přezdívka má stejné jméno jako veřejná přezdívka, pak Desktop databáze projektovou přezdívku nezavádí.
Přezdívky můžeme vytvářet pro lokální nebo síťové adresáře nebo pro vzdálené databáze. K vytváření nové přezdívky používáme dialogové okno Alias Manager. Toto okno otevřeme volbou Tools | Alias Manager v okně Desktopu databáze nebo okně Table.
K vytvoření nové přezdívky v dialogovém okně Alias Manager stiskneme New, do části Database Alias zapíšeme jméno (přezdívku), které chceme dát adresáři, zvolíme požadovaný ovladač v rozbalovacím seznamu Driver Type (v seznamu jsou všechny ovladače, ke kterým se můžeme připojit; pro Paradox a dBASE volíme STANDARD) a do části Path zadáme úplnou adresářovou cestu (včetně písmena jednotky). Dále určíme, zda přezdívka má být veřejná nebo projektová.  Pokud chceme zadávat další přezdívku (a zadanou přezdívku zachovat), pak stiskneme tlačítko Keep New a zadáme další přezdívku. Když chceme vytvořit dočasnou přezdívku (existující pouze do ukončení práce Desktopu databáze) pak stiskneme OK (přezdívky neukládáme). K uložení vytvořených přezdívek zvolíme Save As a je otevřeno dialogové okno ukládání souborů. Implicitně Desktop databáze ukládá veřejné přezdívky do IDAPI32.CFG a projektové přezdívky do PDOXWORK.CFG. Stiskem OK dialogové okno Alias Manager uzavřeme.
Pro modifikaci existující přezdívky v dialogovém okně Alias Manager zvolíme v seznamu Database Alias modifikovanou přezdívku, provedeme požadované změny a volbou Save přepíšeme existující přezdívku nebo volbou Save As vytvoříme novou. Pro odstranění přezdívky, přezdívku vybereme a stiskneme Remove.

Manipulace s objekty

S objekty v Desktopu databáze můžeme pracovat mnoha způsoby. Např. pro přesun objektů lze použít tažení myší, lze používat místní nabídku a volby v hlavní nabídce.
I když většinu funkcí v Desktopu databáze lze provádět pomocí klávesnice, rychleji a flexibilněji je provedeme pomocí myši. Myš není vyžadována pro zadávání dat, ale je vyžadována pro mnoho operací při návrhu. Všechny akce myší začínají výběrem objektu (výběr provádíme obvyklým způsobem). Kliknutím levým tlačítkem vybíráme objekt nebo aktivujeme příkaz. Tažením přesouváme objekty nebo měníme jejich velikost, tvar nebo pozici. Ke změně velikosti sloupce, přetáhneme hranici sloupce. Kliknutím pravým tlačítkem myši zobrazíme místní nabídku.
Různé objekty Desktopu databáze se ukládají různým způsobem. K ukládaní dat tabulek nepoužíváme příkazy File | Save nebo Save As, ale Desktop databáze automaticky ukládá zadaná data při opuštění záznamu. K uložení vlastností tabulek použijeme volbu Table | Table View Properties | Save v okně Table.
Volbu File | Save nebo Save As můžeme použít k ukládání dotazů nebo SQL souborů. Pokud nespecifikujeme jinak, pak soubory jsou uloženy do pracovního adresáře.
Můžeme kopírovat tabulky, dotazy, SQL soubory a textové soubory v Desktopu databáze. Pro bezpečný výsledek kopírování tabulek Paradoxu nebo dBASE a dalších objektů Desktopu databáze používáme utilitu Copy (jsou kopírovány i svázané soubory, aktivovány čtecí zámky při kopírování sdílených tabulek, apod.). Utilitu Copy vyvoláme volbou Tools | Utilities | Copy.
Můžeme kopírovat (změnit) tabulky Paradoxu na tabulky dBASE a obráceně a to změnou přípony pro kopírovanou tabulku (.DB pro Paradox a .DBF pro dBASE).
Můžeme také přejmenovávat tabulky, dotazy a SQL soubory v Desktopu databáze. K bezpečnému přejmenování objektů zvolíme Tools | Utilities | Rename (jsou přejmenovány i svázané soubory). Obdobně, volbu Tools | Utilities | Delete lze použít k bezpečnému rušení objektů.

Další důležité služby

DDE umožňuje komunikovat s ostatními aplikacemi, které podporují DDE. DDE můžeme použít k zasílání hodnot položek z Desktopu databáze do jiných aplikací nebo opačně.
SQL je jazyk pro práci s relačními databázemi. Je to standardní jazyk pro síťové dotazování mezi různými systémy. Zpracovává požadavky v logických jednotkách práce nazvaných transakce. Transakce chrání naše zpracovávaná data před konflikty a tedy umožňují souběžnou práci více uživatelů.
V SQL, všechny transakce mohou být explicitně ukončeny příkazem akceptujícím nebo rušícím všechny změny. Pokud jsme si jisti, že během transakce nenastala žádná chyba, pak transakci ukončíme příkazem COMMIT. Změny jsou potom realizovány. Při výskytu chyby, provedené změny v transakci zrušíme příkazem ROLLBACK.

Tabulky

Vytváření tabulek

Desktop databáze podporuje formáty Paradoxu, dBASE a SQL. Když vytváříme tabulku, pak můžeme: Déle, když vytváříme tabulku Paradoxu, pak můžeme: Když vytvoříme tabulku, můžeme řídit pořadí jejich záznamů nebo hledat data pomocí příkazů a dotazů. Pokud potřebujeme přidat nebo zrušit položky nebo provést jiné strukturální změny na existující tabulce, pak můžeme tabulku restrukturalizovat.
Plánování je prvním krokem při vytváření tabulky. Musíme určit co chceme aby tabulka obsahovala a jak to má obsahovat.
Následující instrukce popisují, jak vytvořit tabulku Paradoxu. Vytváření jiných tabulek se nepatrně liší. Zvolíme File | New | Table a v zobrazeném dialogovém okně Create Table vybereme typ tabulky (pokud typ je jiný než Paradox) a stiskneme OK. Desktop databáze otevírá dialogové okno Create Table, kde můžeme specifikovat strukturu nové tabulky. Do sloupce Field Name zapíšeme jméno první položky a přejdeme do sloupce Type, kde stiskem mezerníku nebo kliknutím pravým tlačítkem myši zobrazíme seznam přípustných datových typů. Vybereme požadovaný typ a přejdeme do sloupce Size a zapíšeme požadovanou velikost položky (je-li velikost požadována). Stiskneme klávesu šipka dolů, přejdeme na definování další položky a zadáme ji. Pokud chceme, pak definujeme klíč a nastavíme vlastnosti tabulky. Když vytváříme tabulku, pak můžeme specifikovat jazyk tabulky a tabulce přiřadit indexy. Pro tabulky Paradoxu můžeme provést i další věci.
Když je definována struktura tabulky, pak zvolíme Save As k pojmenování a uložení tabulky. Po uložení struktury tabulky můžeme do nové tabulky zadávat data.
Když vytváříme tabulku SQL, pak v části Table Type po volbě File | New | Table specifikujeme typ požadovaného ovladače. Dále definujeme strukturu tabulky, specifikujeme požadované položky a definujeme indexy. Další služby (testování přípustnosti a referenční integrity) nejsou v Desktopu databáze podporovány.
Někdy potřebujeme vytvořit novou tabulku, která se podobá (nebo je identická) struktuře jiné existující tabulky. Můžeme tedy zdědit strukturu od existující tabulky a potom ve struktuře provést požadované změny.
Mimo dědění struktury tabulky, můžeme také zdědit primární a sekundární indexy, definice testů přípustnosti, referenční integrity apod.
Při vytváření tabulky děděním, musíme začít od prázdné struktury tabulky a v dialogovém okně Create Table stiskneme tlačítko Borrow. Desktop databáze otevírá dialogové okno Select Borrow Table kde vybereme zdrojovou tabulku a nastavíme volby, určující co chceme zdědit a stiskneme Open. Je použita struktura zdrojové tabulky a podle potřeby ji můžeme změnit.
V tabulkách Paradoxu, testy přípustnosti jsou pravidla přiřazená k položkám, k zajištění toho, že hodnoty položky budou splňovat jisté požadavky. Jedná se např. o povinné položky, minimální, maximální a implicitní hodnotu. Při ukládání tabulky, jsou testy přípustnosti uloženy do souboru se stejným jménem jako je jméno tabulky s příponou .VAL.
Služba tabulkového vyhledávání umožňuje: Když specifikujeme vyhledávací tabulku pro položku, pak můžeme říci, že položka může obsahovat pouze hodnoty, které existují v první položce jiné tabulky. Hlavní výhodou je automatické zadávání správných hodnot.
Referenční integrita znamená, že položka nebo skupina položek v jedné tabulce se musí odkazovat na klíč jiné tabulky. Pomocí referenční integrity, Desktop databáze testuje přípustnost hodnot. Např. jestliže zřídíme referenční integritu mezi tabulkami Zákazník a Objednávka na jejich položkách Číslo zákazníka, pak zadávaná hodnota čísla zákazníka v tabulce Objednávka musí odpovídat existujícímu zákazníku v tabulce Zákazník. Desktop databáze umožňuje zřídit referenční integritu pro tabulky, které to podporují.
Můžeme zajistit, aby vytvořená tabulka byla chráněna před přístupem neautorizovaných uživatelů. To je důležité ve víceuživatelském prostředí. Nemusíme zřídit jen heslo pro tabulku jako celek, ale můžeme také zřídit specifická práva k tabulce nebo jednotlivým položkám. K tabulce potom mohou přistupovat pouze ty uživatelé, kteří znají heslo.
Desktop databáze poskytuje dva typy hesel. Hlavní heslo řídí přístup k celé tabulce. Toto heslo musíme specifikovat dříve než budeme vytvářet další přístupová omezení. Pomocné heslo poskytuje různé úrovně přístupových privilegií pro různé uživatele a skupiny.
Hesla pro naši tabulku můžeme definovat z dialogového okna Create Paradox Table nebo Restructure Paradox Table. Když se pokusíme otevřít tabulku chráněnou heslem, pak Desktop databáze se nás na heslo dotazuje. Tabulka se otevře pouze pokud zadáme správné heslo.
Pokud přiřadíme stejné heslo k několika tabulkám, pak můžeme použít dialogové okno Enter Password pouze k jednomu zadání hesla pro přístup ke všem těmto tabulkám.
Jazykový ovladač tabulky určuje řadící pořadí tabulky a dostupnou znakovou množinu. Implicitní jazykový ovladač můžeme volit v konfigurační utilitě BDE. Pokud změníme jazykový ovladač tabulky při restrukturalizaci tabulky, pak riskujeme ztrátu speciálních znaků v tabulce. Implicitní jazykový ovladač měníme v dialogovém okně Create Table nebo Restructure Table.

Restrukturizace tabulek

Můžeme změnit strukturu tabulky v dialogovém okně Restructure Table a to i když tabulka již obsahuje data. Můžeme přidávat položky, rušit položky, měnit pořadí položek, měnit typy položek a jejich velikost, měnit indexy a dědit strukturu od existující tabulky. Pro tabulky Paradoxu je možno měnit i další věci.
Před spuštěním restrukturalizace se musíme ujistit, že není spuštěn žádný dotaz, který používá tuto tabulku. Pokud některý uživatel má tuto tabulku otevřenu, pak restrukturalizaci nelze provést.
Dialogové okno Restructure Table otevřeme některou z těchto technik: Nyní můžeme změnit požadované informace a po dokončení změn tabulku uložit.

Prohlížení tabulek

Desktop databáze používá okno Table k zobrazení dat ve sloupcích a řádcích. Můžeme použít implicitní formát tabulky nebo změnit řádky a sloupce k získání požadovaného pohledu.
K otevření tabulky zvolíme File | Open | Table, vybereme tabulku a stiskneme OK. Desktop databáze zobrazí implicitní pohled na tabulku. Paleta nástrojů se změní a obsahuje tlačítka pro provádění operací na tabulce.
Implicitní pohled závisí na struktuře tabulky. Toto ale můžeme změnit. Myší můžeme změnit pořadí sloupců, šířku sloupců, výšku hlavičky, mezer mezi řádky (výšku řádků) a umístění rolovacího zámku na sloupec.
Změněný pohled můžeme uložit volbou Table | Table View Properties | Save a později jej opět použít volbou Table | Table View Properties | Restore.
Když řadíme tabulku, pak Desktop databáze rearanžuje pořadí záznamů v tabulce a zobrazí je ve specifikovaném pořadí. Ke změně aktuálního umístění záznamů v tabulce, můžeme seřadit klíčovanou tabulku do nové tabulky. Tabulky SQL nelze řadit. K řazení použijeme utilitu Sort.
K tabulce můžeme také přidávat záznamy z jiné tabulky, přesouvat záznamy, nahrazovat záznamy a vyprazdňovat tabulku. Můžeme také zjišťovat strukturu tabulky. Tyto činnosti provádíme odpovídajícími utilitami.

Zadávání a editace dat

Můžeme zadávat data do tabulek přechodem do editačního režimu. Mimo zápisu hodnot do položek můžeme také používat operace se schránkou. Můžeme také vkládat, editovat a rušit datové záznamy pomocí dotazů INSERT, CHANGETO a DELETE.
Když tabulku otevřeme v editačním režimu, pak pro práci s daty můžeme používat následující volby z nabídky Edit: Undo, Cut, Copy, Paste, Paste Link, Delete a Select All.
K zadávání nebo změně dat, otevřeme tabulku volbou File | New nebo File | Open a zvolíme Table | Edit Data nebo stiskneme F9. Umístíme ukazatel na položku, kterou chceme zadávat nebo editovat a zapíšeme požadovanou hodnotu. V editačním režimu jsou data automaticky ukládána, když opustíme záznam. K ukončení editačního režimu opět použijeme volbu Table | Edit Data nebo stiskneme F9.
V editačním režimu můžeme také vkládat nové prázdné záznamy na pozici ukazatele stiskem klávesy Insert a rušit vybraný záznam stiskem Ctrl+Delete.
Desktop databáze automaticky uzamyká záznam při zahájení jeho editace a odstraňuje zámek při opuštění záznamu. Záznam můžeme také uzamknout ručně. Vybereme záznam a zvolíme Record | Lock. Když záznam je uzamčen, pak ostatní uživatelé jej nemohou používat.

Používání DDE

Dynamická výměna dat (DDE) umožňuje komunikovat s ostatními aplikacemi, které podporují DDE. DDE můžeme použít k zaslání hodnot položek z Desktopu databáze ostatním aplikacím nebo zasílat data z jiné aplikace do tabulky nebo dotazu v Desktopu databáze.
Vazby DDE jsou zobrazeny jako text a ne jako ikony nebo data. Když chceme vzít hodnoty z položky v Desktopu databáze a umístit je do jiné aplikace, pak použijeme Desktop databáze jako server. V okně Table Desktopu databáze vybereme libovolnou hodnotu v položce a pak zvolíme Edit | Copy pro překopírování položky do schránky. V aplikaci do které data chceme překopírovat zvolíme Paste Link a umístíme položku na požadované místo. Neumisťujeme zde aktuální hodnotu ale informaci o tom, kde hledat hodnotu. Pokud se přesuneme v Desktopu databáze na jiný záznam, pak je zde zobrazena hodnota položky tohoto jiného záznamu. K vazbě na celou tabulku prostřednictvím DDE, volíme Edit | Select All a potom Edit | Copy.
Když použijeme Desktop databáze jako klienta DDE, pak umístíme vazbu na informace o hodnotě z jiné aplikace do položky v tabulce Paradoxu. Do schránky překopírujeme hodnotu, kterou chceme používat a v Desktopu databáze vybereme položku (typu Alpha) kam chceme uložit DDE hodnotu a zvolíme Edit | Paste Link. Vidíme vloženou informaci o vazbě typu: @DDE:"QPW"!"C:\QPW\NOTEBK1.WB1"!"$A$D$2"!@. Tento řetězec říká kde hledat hodnotu. K zobrazení hodnoty místo vazby v Desktopu databáze vybereme položku a stiskneme Ctrl+F2.
Vazbu můžeme také vkládat do okna dotazu. Vybereme prvek na serveru a vložíme jej do schránky. V okně dotazu vybereme položku QBE k získání hodnoty ze serveru a zvolíme Edit | Past Link. Informace o vazbě se zobrazí v dotazu. Volbou Query | Wait For DDE řekneme Desktopu databáze, aby provedl dotaz vždy, když jsou data zaslána ze serveru.
Po vložení vazby DDE do klientské aplikace DDE, je aktivována volba Table | Notify On v Desktopu databáze. Pokud tato volba je aktivní, pak vazba žije. Když odznačíme tuto volbu, pak vazba je přerušena a při jejím dalším označení je vazba opět navázána.

Dotazy

K otevření dotazu z Desktopu databáze zvolíme File | Open | Query a v zobrazeném dialogovém okně Open Query vybereme požadovaný dotaz. Desktop databáze otevírá okno dotazu se zobrazeným vybraným dotazem.
Pro spuštění dotazu z okna dotazu zvolíme Query | Run Query nebo stiskneme F8. Pokud dotaz neobsahuje chyby, pak Desktop databáze zobrazí okno, které nám oznamuje stav dotazu. Po dokončení dotazu, v závislosti na typu dotazu, Desktop databáze zobrazí tabulku Answer nebo změní data v tabulce.
Dotaz můžeme volbou File | Save nebo File | Save As uložit pro pozdější použití.

Vytváření dotazu

Dotazy, které můžeme s Desktopem databáze a QBE používat, jsou značně omezené. Můžeme použít dotaz k extrakci požadované informace. Když vytváříme dotaz, pak vybereme tabulku nebo tabulky, spojíme vybrané tabulky (pokud vytváříme více tabulkový dotaz), vybereme položky, které chceme zobrazovat v tabulce Answer, a případně specifikujeme výběrové podmínky, prováděné výpočty a nastavíme vlastnosti dotazu (typ tabulky a řadící pořadí). Nyní již dotaz můžeme spustit a případně uložit.
Více se dotazy nebudeme zabývat.

SQL

V SQL se používá poněkud jiná terminologie než v Paradoxu nebo dBASE. Místo záznamu používáme termín řádek a místo položky používáme termín sloupec.
Dříve než můžeme přistupovat k databázím SQL musíme provést následující kroky: povolit přístup k databázi (musíme mít přípustné ID uživatele a heslo pro přístup k databázi s vhodnými přístupovými privilegii), instalovat nezbytný klientský software (software nutný pro komunikaci s SQL serverem), instalovat ovladač SQL, konfigurovat ovladač SQL a vytvořit alespoň jednu přezdívku SQL.
Poprvé, když použijeme dotaz nebo zobrazíme tabulku v SQL databázi pomocí Desktopu databáze, pak je zobrazeno dialogové okno Database Information. Ke kompletaci připojení, zadáme naše heslo a stiskneme OK. Po úspěšném připojení je možno provádět požadované operace s databází. K databázi jsme připojeni stále dokud neukončíme práci Desktopu databáze nebo se od databáze neodpojíme.
Pokud se chceme připojit k databázi před první akcí s databází, pak se můžeme připojit pomocí Správce přezdívek. Zvolíme Tools | Alias Manager, v zobrazeném dialogovém okně v rozbalovacím seznamu Database Alias vybereme požadovanou přezdívku. Přezdívka je zobrazena společně se svými připojovacími parametry, které podle potřeby modifikujeme, zadáme heslo a zvolíme Connect. Obdobně postupuje při odpojování databáze, pouze zvolíme Disconnect.
Desktop databáze nabízí několik různých způsobů k provádění operací nad SQL daty. Začátečníci v SQL mohou používat rám dotazů na SQL tabulky v QBE. Mohou také prohlížet a editovat data přímo prostřednictvím okna tabulky a okna formuláře. Zkušení uživatelé SQL mohou předávat SQL příkazy přímo do databáze pomocí okna Editoru SQL.
Dotaz podle příkladu (QBE) nabízí grafický formát, který pomáhá určit který typ informací chceme v naši tabulce Answer zobrazit. Když použijeme QBE pro dotaz na tabulku v SQL databázi, pak Desktop databáze se pokusí přeložit náš dotaz na ekvivalentní příkaz SQL a předat jej na server SQL. V případě úspěchu server zpracuje náš dotaz a výsledky předá zpět prostřednictvím ovladače SQL. Editor SQL umožňuje zobrazit vytvořený příkaz SQL pro dotaz kdykoli během vytváření dotazu nebo po jeho zpracování.
Dotazování na tabulku SQL pracuje přesně stejně jako dotazování na lokální tabulku.
SQL Links také podporuje použití dotazů, které spojují SQL tabulky s lokálními tabulkami nebo SQL tabulky z různých databází SQL.
K zobrazení překladu SQL pro dotaz vytvořený pomocí QBE se připojíme k SQL databázi, použijeme QBE k vytvoření dotazu na SQL databázi a zvolíme Query | Show SQL.

Používání Editoru SQL

Okno Editoru SQL používáme k přímému zadávání, provádění a ukládání SQL příkazů. Příkaz SQL specifikujeme v dialektu našeho serveru. Server SQL testuje syntaxi a provádí příkazy bez zásahu Desktopu databáze. Editor SQL se zobrazí, když otevřeme nebo vytváříme nový SQL soubor.
Editor SQL můžeme přizpůsobit volbou Edit | Editor Preferences a zadáme naše preference na různých stránkách zobrazeného dialogového okna.
SQL příkazy jsou instrukce, které používáme ke komunikaci s databázemi na SQL serveru. Dříve než můžeme spustit SQL příkaz, musíme specifikovat přezdívku, kterou příkaz bude používat. Pro specifikaci přezdívky zvolíme SQL | Select Alias.
K zadání SQL příkazu, zapíšeme příkaz do Editoru SQL. Pokud to náš server umožňuje, pak můžeme zadat více příkazů SQL.
Pro spuštění příkazu z okna Editoru SQL, stiskneme tlačítko Run SQL. K uložení příkazů SQL zvolíme File | Save nebo File | Save As.
S příkazy SQL se seznámíme v následující kapitole.

  1. Pomocí Desktopu databáze vytvořte tabulku obsahující informace o našich známých. Položky tabulky a jejich typy si zvolte. Zvolte také typ použité databáze. Tuto tabulku zaplňte nějakými daty (budeme ji potřebovat později).
2. Desktop databáze