5. Průzkumník databáze

Průzkumník databáze je hierarchický prohlížeč databází, jehož editační možnosti budou popsány později. Každá verze C++ Builderu je dodávána s jinou verzí Průzkumníku databáze.
 
Verze Jméno průzkumníka Poznámky
Client/Server Suite  SQL Explorer Přístup k SQL databázím na vzdálených serverech a práce s datovým slovníkem.
Developer Database Explorer Přístup k lokálním databázím, přístup k ODBC databázím (nepodporuje rozšířené prohlížení objektů) a práce s datovým slovníkem.
Desktop Database Explorer Přístup k lokálním databázím.

Pomocí připojení k databázi, Průzkumník databáze umožňuje:

Okno Průzkumníka databáze zobrazuje databázové informace ve dvou panelech. Levý panel zobrazuje hierarchický strom objektů a má dvě stránky: stránku Databases (přezdívky dostupných databází) a stránku Dictionary (importované databáze, tabulky a množiny atributů v datovém slovníku). Pravý panel obsahuje stránky, které zobrazují obsah objektů vybraných v levém panelu (závisí na typu vybraného objektu).
Paleta Průzkumníka databáze obsahuje pro provádění příkazů následující tlačítka:
 
Tlačítko Příkaz
Open Otevírá nový objekt.
Delete Ruší vybraný objekt (nelze aplikovat na editovaná data na stránce Data v pravém panelu).
Cancel Ruší modifikace vybraného objektu (nelze aplikovat na editovaná data na stránce Data v pravém panelu).
Apply Zapisuje modifikace vybraného objektu do databáze (nelze aplikovat na editovaná data na stránce Data v pravém panelu).
Explore Blobs Zobrazuje formulář pro zobrazování textového a grafického BLOB přiřazeného k datům v tabulce.

Když v pravém panelu je zobrazena stránka Enter SQL, pak paleta nástrojů obsahuje tlačítka (napravo od tlačítka Explore Blobs):
 
Tlačítko Příkaz
Begin Or Commit Transaction Zahajuje databázovou transakci.
Rollback Transaction  Ruší poslední databázovou transakci.

Když v pravém panelu je zobrazena stránka Data, pak paleta nástrojů také obsahuje tato tlačítka pro zobrazování a editaci záznamů:
 
Tlačítko Příkaz
First Record Přechod na první záznam.
Prior Record  Přechod na předchozí záznam.
Next Record Přechod na následující záznam.
Last Record Přechod na poslední záznam.
Insert Record Vložení nového záznamu.
Delete Record Zrušení současného záznamu.
Edit Record  Editace současného záznamu.
Post Edit  Zaslání změněného záznamu do databáze.
Cancel Edit Zrušení editací nebo vložení záznamu.
Refresh Data  Získání nového pohledu na data z databáze.



Stránka Databases zobrazuje přezdívky dostupných databází. Můžeme prohlížet a editovat současné nastavení na stránkách v pravém panelu.
Stránka Dictionary zobrazuje databáze a nastavení atributů dostupných v datovém slovníku. Datový slovník je speciální databáze použitá k uložení nastavení atributů pro položkové komponenty v datových množinách C++ Builderu. Množina atributů popisuje vlastnosti položkových komponent, typ položky a typ vizuálního řízení vytváření, když položková komponenta je tažena na formulář. Nastavením množiny atributů v datovém slovníku, nenastavujeme pouze množinu vlastností pro jednu komponentu a můžeme je pak aplikovat na ostatní položkové komponenty, které sdílí stejné vlastnosti.
Množina atributů může být vytvořena pro libovolnou databázi. Můžeme odvodit množinu atributů z existující databáze importováním databáze do datového slovníku nebo můžeme vytvořit množinu atributů přímo v Editoru položek, když pracujeme s datovou množinou v datovém modulu nebo na formuláři.
K zobrazení dostupných databází a množiny atributů expandujeme větve stromu v levém panelu. K vytvoření a editaci objektů datového modelu můžeme použít nabídku Dictionary a můžeme zobrazit a editovat současné nastavení na stránkách v pravém panelu.
Můžeme importovat omezení a implicitní hodnoty z SQL serveru. Výhodou této služby je, že nemusíme vytvářet nový slovník nebo aktualizovat stávající.


V závislosti na výběru objektu v levém panelu, jsou v pravém panelu některé nebo všechny tyto stránky:
 
Stránka pravého panelu Popis
Definition Zobrazuje parametry nebo vlastnosti objektu vybraného v levém panelu.
Summary Zobrazuje objekty obsažené v nadřízeném objektu vybraném v levém panelu.
Data Zobrazuje data ve vybrané tabulce, pohledu nebo synonymu.
Enter SQL Zobrazuje okno, ve kterém můžeme zadávat SQL příkazy.
Text Zobrazuje text požadovaný k vytvoření vybraného SQL objektu.

Můžeme editovat parametry na stránce Definition, pokud jména parametrů jsou zobrazeny normálním písmem. Pokud jméno parametru je zobrazeno tučně, pak parametr nelze editovat.
Stránka Text v pravém panelu zobrazuje text objektů SQL. Když zvolíme View | Complete Text, pak text není editovatelný. Když zvolíme View | Change Text, pak panel ve spodní části stránky zobrazuje dotazy, které budou provedeny pro vybraný objekt, když aplikujeme naše změny.



Nyní se seznámíme s volbami nabídek. Nejprve se budeme zabývat příkazy nabídky Object. Většina z těchto příkazů je také dostupná z místní nabídky vybraného objektu.
 
Nabídka Object Popis
Open Otevírá vybraný objekt.
Close Uzavírá vybraný objekt.
New Vytváří novou instanci třídy vybraného objektu.
Delete Ruší vybraný objekt.
Rename Mění jméno objektu.
Apply Ukládá vybraný objekt, včetně všech změn a nevyřízených rušení objektů v jeho stromu.
Cancel Ruší současnou operaci.
Save As Umožňuje specifikovat jméno pro SQL objekt k uložení.
Save Text To File Pokud SQL objekt má textovou reprezentaci na stránce Text, pak můžeme uložit text objektu do textového souboru. Když volba View | Change Text je označena, pak můžeme uložit také změněný text.
Version Information Zobrazuje informace o instalovaných DLL BDE a souborů ovladačů.
Vendor Configuration Zavádí Administrátor ODBC nebo příslušnou konfigurační utilitu SQL pro vybranou databázi.
ODBC Administrator Zavádí Administrátor ODBC pro konfiguraci ODBC ovladačů.
BDE Administrator Zavádí Administrátor BDE pro konfiguraci BDE nebo databázových ovladačů a přezdívek.
Import To Dictionary Import informačního schématu z vybraného objektu do současného slovníku.
Exit Ukončuje Průzkumníka databáze.
Nabídka Dictionary
Select Vybírá existující datový slovník.
Register Registruje nový datový slovník v seznamu Datových slovníků.
Unregister Zrušení registrace datového slovníku v seznamu Datových slovníků. Slovník není zrušen, ale není již dále zobrazován v seznamu.
New Vytváří nový Datový slovník.
Delete Ruší Datový slovník.
Import From Database Importuje informační schéma z existující databáze do Datového slovníku.
Import From File Importuje obsah exportovaného slovníku ze souboru.
Export To File Exportuje Datový slovník do souboru. Tato volba je užitečná pro sdílení Datových slovníků mezi různými vývojáři.
Nabídka Edit
Undo Ruší poslední příkaz nebo vrací text do jeho předchozího stavu.
Cut Vystřihuje vybraný text.
Copy Kopíruje vybraný text.
Paste Vkládá text ze schránky na určené místo.
Delete Ruší vybraný text.
Select All  Vybírá všechen text na stránce Enter SQL nebo Text.
Text Umožňuje editovat vybraný objekt SQL v editoru kódu, když Průzkumník databáze je spuštěn z IDE.
Nabídka View
Toolbar Při označení je zobrazena Paleta nástrojů.
Status Bar Při označení je zobrazen stavový řádek.
Blob Explorer  Tento příkaz otevírá průzkumník Blob. Zobrazuje vybraný Blob (binary large object) jako je obrázek nebo text.
System Data Při označení jsou zobrazována systémová data (systémové tabulky, spouštěče apod.).
Complete Text Zobrazuje text pro celý strom závislých objektů. Tento text není editovatelný.
Change Text  Při označení vidíme dotazy, které budou provedeny pro vybraný objekt, když aplikujeme jeho změny.
Large Icons Při označení, obsah vybraného objektu v levém panelu je zobrazen jako velké ikony v pravém panelu.
Small Icons Při označení, obsah vybraného objektu v levém panelu je zobrazen jako malé ikony v pravém panelu.
List Při označení, obsah vybraného objektu v levém panelu je zobrazen jako seznam v pravém panelu.
Detail Při označení, obsah vybraného objektu v levém panelu je podrobně zobrazen jako seznam v pravém panelu.
Auto Arrange  Automaticky rozmisťuje ikony na stránce Summary.
Refresh Jestliže to umožňuje vybraný objekt, pak jsou opětovně získány informace o objektu a jeho potomcích.
Nabídka Options
Query Nastavuje volby formátu dotazu; při označení je dotazem vrácená množina editovatelná.
Transaction Isolation Specifikuje úroveň izolace transakcí použitou SQL serverem: Dirty Read, Committed Read nebo Repeatable Read.
Word Wrap Na stránkách Enter SQL a Text dochází k zalamování textu.
Show Confirmations Při označení, jsou před provedením modifikací zobrazována potvrzovací okna.
Show Warnings Při označení, jsou zobrazena varování, když může dojít ke ztrátě dat během serverové operace.
Sync Pages  Při označení, informační schéma vybrané databáze je umístěno do vybraného slovníku, když se přepneme ze stránky databáze na stránku slovníku.
Nabídka Help
Contents Zobrazuje okno obsahu nápovědy.
About Zobrazuje informace o verzi.

Místní nabídka stránky Data:
 
Příkaz Popis
Undo Ruší poslední příkaz nebo návrat do předchozího stavu.
Cut Vystřihuje vybraný text.
Copy Kopíruje vybraný text.
Paste Vkládá vybraný text.
Delete Ruší vybraný text.
Select All Vybírá všechen text v editačním okně.
Begin Transaction  Zahajuje transakci SQL.
Commit Transaction Dokončuje současnou transakci.
Rollback Transaction Ruší současnou transakci.
Order Specifikuje index pro řazení.
Range Specifikuje rozsah pro zobrazení dat.
Filter Používá výraz k určení, která data zobrazit.

Místní nabídka stránky Enter SQL:
 
Příkaz Popis
Undo Ruší poslední příkaz nebo návrat do předchozího stavu.
Cut Vystřihuje vybraný text.
Copy Kopíruje vybraný text.
Paste Vkládá vybraný text.
Delete Ruší vybraný text.
Select All  Vybírá všechen text v editačním okně.
Load From File Zavádí SQL příkaz z textového souboru.
Save To File Ukládá SQL příkaz zadaný v tomto okně do textového souboru.
Execute Provádí současný SQL příkaz.
Previous Query Vybírá předchozí spuštěný dotaz.
Next Query Vybírá následující spuštěný dotaz.
Begin Transaction Spouští transakci SQL.
Commit Transaction Dokončuje současnou transakci.
Rollback Transaction Ruší současnou transakci.
Filter Používá výraz k určení, která data zobrazit ve výsledkové množině dotazu.

Místní nabídka Blob Explorer:
 
Příkaz Popis
Always On Top Při označení je Průzkumník Blob stále nad ostatními okny.
Show As Default Zobrazuje obsah TGraphicsField jako grafiku a obsah TMemoField jako text (ostatní typy položek nezobrazuje).
Show As Graphic Zobrazuje obsah současné položky jako grafiku.
Show As Text Zobrazuje obsah současné položky jako text.


Stránka Dictionary

Stránka Dictionary zobrazuje databáze a množinu atributů dostupnou v datovém slovníku. K vytvoření nového slovníku přejdeme na stránku Dictionary v levém panelu a vybereme zde objekt Dictionary. V místní nabídce tohoto objektu zvolíme New, zadáme jméno slovníku, vybereme přezdívku databáze slovníku, zadáme jméno tabulky pro data slovníku a volitelně zadáme popis Datového slovníku. Po zadání těchto informací stiskneme OK.
Pro vložení obsahu existujícího slovníku do nového použijeme volbu Dictionary | Export To File k uložení obsahu současného slovníku do souboru, volbou Dictionary | New vytvoříme nový slovník a volbou Dictionary | Import From File importujeme obsah textového souboru do nového slovníku.
K importování množiny atributů a definicí tabulek do datového slovníku zvolíme Dictionary | Import Database, v zobrazeném dialogovém okně vybereme nebo zadáme slovník, ze kterého chceme množinu atributů importovat a stiskneme OK.

Množina atributů

Množina atributů v datovém slovníku odpovídá typu položky, vlastnostem a datovému ovladači, který je automaticky vytvořen pro objekt TField když jej přetáhneme na formulář z Editoru položek při návrhu. Množinu atributů můžeme vytvořit v Průzkumníku databáze nebo v Editoru položek.
K vytvoření množiny atributů z Editoru položek, vybereme vlastnosti pro položkovou komponentu v Inspektoru objektů a v místní nabídce Editoru položek zvolíme Save (přiřazení stejného jména množině atributů jako položka) nebo Save As (specifikace jiného jména pro množinu atributů).
Když množina atributů je vybrána v levém panelu Průzkumníka databáze, pak parametry pro množinu atributů jsou zobrazeny na stránce Definition v pravém panelu. Tyto parametry můžeme editovat podle potřeby. Následující tabulka uvádí parametry pro množinu atributů a popisuje jejich použití.
 
Atribut Definice
TField Class Typ vytvořené položky, když položka je přidána do datové množiny. Při neuvedení, implicitní hodnota TField závisí na fyzickém datovém typu.
TControl Class Typ vytvořeného ovladače, při přetažení položky na formulář. Při neuvedení, implicitní hodnota TControl závisí na typu TField.
Alignment Určuje zarovnávání dat v editačním ovladači nebo mřížce.
DisplayLabel Hlavička sloupce pro položku zobrazenou v mřížce. Při neuvedení je použita vlastnost FieldName.
DisplayWidth Počet znaků použitých k zobrazení položky v mřížce.
ReadOnly Určuje, zda položka je určena pouze pro čtení.
Required Určuje, zda položka musí v ovladači být zadána.
Visible Určuje, zda položku je možno zobrazit v mřížce.
Transliterate Určuje, zda typ položky je překládán podle potřeby mezi typy v různých databázích.
EditMask Maska použitá k omezení dat, která může být vložena do maskovaného editačního ovladače nebo zadávané do datové položky.
DisplayFormat Použit k formátování hodnoty položky pro zobrazovací účely.
EditFormat Používán jako editační formát položky.
MaxValue Maximální hodnota povolená v položce.
MinValue Minimální hodnota povolená v položce.
Currency Indikuje, zda položka je peněžní položka.
Precision Používáno ve formátování číselných položek (počet míst za desetinnou tečkou). 
DisplayValues Určuje jak položka TBoolean je převáděna na a ze zobrazovacího formátu.
BlobType Specifikuje typ Blob přiřazený k memo nebo grafickému ovladači.
Based On Specifikuje jinou množinu atributů, na které je tato množina založena.

Ne všechny vlastnosti jsou vždy aplikovány na všechny položky, které používají množinu atributů. Např. pokud specifikujeme vlastnost MaxValue v množině atributů a množinu aplikujeme na objekt TStringField, pak MaxValue je ignorována.
Pro vytvoření nové množiny atributů, rozšíříme objekt Dictionary v levém panelu dokud není zobrazen objekt Attribute Sets a v místní nabídce tohoto objektu zvolíme New. V pravém panelu je zobrazena stránka Definition. V levém panelu zadáme jméno pro množinu atributů. Volitelně na stránce Definition v pravém panelu specifikujeme TField Class (specifikuje typ položkové komponenty pro datovou položku přidanou k datové množině). Totéž platí pro TControl Class (určuje typ datového ovladače vloženého na formulář, když položka používající tuto množinu atributů je přetažena z Editoru položek na formulář). Na stránce Definition nastavíme vlastnosti pro množinu atributů. V místní nabídce objektu množiny atributů v levém panelu zvolíme Apply pro přidání množiny atributů k objektu Attribute Sets.
K modifikaci množiny atributů, rozšíříme objekt Dictionary v levém panelu dokud není zobrazen objekt Attribute Sets a rozšíříme tento objekt k zobrazení dostupných množin atributů. Vybereme modifikovaný atribut v levém panelu a požadované modifikace provedeme v pravém panelu. V místní nabídce objektu množiny atributů v levém panelu zvolíme Apply pro přidání množiny atributů k objektu Attribute Sets.
K aplikování množiny atributů na objekt TField dvojitě klikneme na datové množině na formuláři k zobrazení Editoru položek, vybereme položku na kterou chceme aplikovat množinu atributů, v její místní nabídce zvolíme Associate attributes a vybereme nebo zadáme množinu atributů k aplikování.


Stránka Databases

Stránka Databases zobrazuje přezdívky dostupných databází. Můžeme prohlížet a editovat současné nastavení na stránkách v pravém panelu.
Průzkumník databáze můžeme použít k prohlížení, vytváření a modifikaci přezdívek BDE. Tyto úlohy se provádějí podobně jako v Administrátoru BDE.
Průzkumník databáze je také možno použít k prohlížení, editaci, vkládání a rušení dat v tabulkách. Stručná popis těchto úloh je popsán v následující tabulce.
 
Úloha Postup
Prohlížení tabulky dat Vybereme tabulku v levém panelu, přejdeme na stránku Data v pravém panelu a používáme tlačítka navigátoru k procházení záznamy tabulky.
Editace záznamu Editujeme položky záznamu v mřížce a pro odeslání modifikací do databáze vybereme jiný záznam nebo stiskneme tlačítko Post na navigátoru. K zrušení změn před jejich odesláním stiskneme tlačítko Cancel nebo klávesu ESC.
Vložení nového záznamu Přejdeme na záznam, před který chceme vložit nový záznam a na navigátoru stiskneme tlačítko Insert. Je zobrazen prázdný řádek do kterého zadáme data nového řádku. Zadaná data je nutno odeslat do databáze.
Zrušení záznamu Umístíme kurzor na rušený řádek a na navigátoru stiskneme tlačítko Delete.

V některých verzích C++ Builderu, Průzkumník SQL umožňuje provádět dotazy SQL na vzdáleném serveru. V jiných verzích je možno provádět dotazy na tabulkách Paradoxu a dBASE. K dotazování databáze pomocí SQL, vybereme objekt databáze v levém panelu, přejdeme na stránku Enter SQL v pravém panelu a zadáme do editačního okna SQL příkaz. Když zadáváme jiný příkaz než SELECT, pak nesmí být označeno Live Query (volbou Option | Query před provedením příkazu). K provedení příkazu stiskneme tlačítko Run.


  1. Pomocí průzkumníka databáze zjistěte, z jakých tabulek se skládá cvičná databáze Sybase SQL Anywhere.
  2. Zjistěte, zde je vytvořen nějaký datový slovník a pokud ano, pak se podívejte na jeho obsah.
5. Průzkumník databáze