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:
-
Každá hodnota v položce musí být unikátní. To zajišťuje,
že nemáme duplicitní záznamy v tabulce.
-
Klíč zřizuje implicitní řadící pořadí pro tabulku. Desktop
databáze řadí záznamy tabulky na základě hodnot v položkách definovaných
jako klíč tabulky.
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í:
-
Alternativní řadící pořadí pro tabulku
-
Položku, která může tvořit vazbu na jinou tabulku
-
Možnost urychlení jistých vyhledávacích a lokalizačních operací
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í:
-
Soubory na disku
-
Tabulky, dotazy a SQL soubory.
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:
-
Nalezení nebo výběru dat z tabulky
-
Kombinování dat z několika tabulek
-
Provádění výpočtů na datech v tabulce
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:
-
Kteří zákazníci podali objednávku v tomto měsíci?
-
Kolik objednávek podal každý zákazník?
-
Které objednávky nebyly vyřízeny?
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:
-
Spravovat tabulky
-
Vytvářet a spouštět dotazy
-
Vytvářet a spouštět příkazové soubory SQL
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
-
Editor SQL
-
Okno Table
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:
-
Vytvoření nové přezdívky
-
Modifikaci existující přezdívky
-
Odstranění přezdívky
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.
-
Veřejné přezdívky jsou uloženy v konfiguračním souboru BDE.
Jsou dostupné z libovolného pracovního adresáře a viditelné z libovolné
aplikace, která používá BDE (Borland Database Engine).
-
Projektové přezdívky jsou uloženy v souboru PDOXWORK.CFG
v pracovním adresáři. Jsou dostupné pouze když používáme Desktop databáze
a jsme v příslušném pracovním adresáři.
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:
-
Pojmenovat položky tabulky (vyžadováno)
-
Specifikovat typy položek (vyžadováno) a velikosti (vyžadováno
pro některé typy položek)
-
Specifikovat jazyk tabulky pro řízení řadícího pořadí a dostupné
znakové množiny
-
Přiřadit indexy k tabulce
-
Převzít strukturu od existující tabulky.
Déle, když vytváříme tabulku Paradoxu, pak můžeme:
-
Přiřadit k tabulce klíč nebo primární index
-
Přiřadit k tabulce sekundární indexy
-
Definovat ověřovací pravidla pro jednotlivé položky
-
Zřídit vyhledávání v jiné tabulce
-
Zřídit referenční integritu s jinou tabulkou
-
Zřídit bezpečnostní heslo pro tabulku nebo individuální položku.
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:
-
Odkazovat se na jinou tabulku k hledání akceptovatelných
hodnot
-
Automaticky kopírovat hodnoty z vyhledávací tabulky do naší
tabulky
-
Požadavek aby hodnota zadaná do položky existovala v první
položce jiné tabulky.
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:
-
V Prohlížeči projektu klikneme na ikonu tabulky, vybereme
tabulku a v její místní nabídce zvolíme Restructure
-
V okně Table zvolíme Table | Restructure
-
V Desktopu zvolíme Tools | Utilities | Restructure.
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.
-
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).