Firebird 3.díl, Firebird a SQL

Napsal O webu (») 20. 10. 2007 v kategorii Databáze, přečteno: 3293×
Tento článek je psán za podpory webhostingu banan.cz, který Firebird plně podporuje.

Firebird a SQL

Uživatelské aplikace pracují s daty v databázi i se samostatnou strukturou databáze pouze jediným způsobem a to prostřednictvím jazyka SQL. Implementace jazyka SQL u serveru Firebird se úzce drží standardu známého jako SQL92. Standardní jazyk SQL není procedurálním jazykem, což znamená, že orientován přímo na výsledky jednotlivých příkazů místo na formalizaci postupů k dosažení požadovaného výsledku. Byl vytvořen jako univerzální prostředek pro manipulace s relačními databázemi, určený především pro použití v rámci interaktivních systémů nebo aplikací vytvářených v jiných programovacích jazycích.

Typy SQL příkazů

Příkazy SQL slouží k předání požadavku nebo dotazu na databázi. Ve standardu jsou definovány tři typy příkazů.


1. Příkazy, které vybírají na základě podmínek z jedné či více tabulek a vracejí výsledek v podobě tabulky. Tuto skupinu reprezentuje příkaz SELECT.

2. Příkazy pro manipulaci s daty DML (Date Manipulation Language) - tyto příkazy slouží pro manipulaci dat v relačních tabulkách. Tuto skupinu představují příkazy INSERT, UPDATE a DELETE.

3. Příkazy pro definici dat DDL (Date Definition Language) - příkazy pro manipulaci se schématem databáze (vytvoření, změnu a zrušení), reprezentované příkazy CREATE, ALTER a DELETE.

Procedurální SQL

Firebird nabízí pro tvorbu programových modulů na straně serveru jazyk známý jako jazyk uložených procedur, nebo také PSQL (Procedual SQL). Jedná se o variantu zapouzdřeného jazyka SQL (viz. níže) používaného v rámci jiných programů rozšířeného o příkazy řízení běhu programu, proměnné a zpracování chyb, s jehož pomocí je možné vytvářet relační tabulky a zpracovávat je příkazem SELECT. Jazyk PSQL bohužel ale nedovoluje některé konstrukce jazyka SQL, včetně definice některých datových typů.

Zapouzdřený jazyk SQL

Firebird umožňuje vkládat příkazy SQL přímo do zdrojového kódu aplikací vytvářených v jiných programovacích jazycích. Tyto konstrukce jazyka SQL jsou označovány jako zapouzdřený jazyk SQL nebo také ESQL (Embedded SQL). Před kompilací takové aplikace je nutné zdrojové kódy nejprve zpracovat programem gpre, který převede ESQL příkazy na datové a programové konstrukce hostitelského jazyka. Poté již je možné zdrojové texty zkompilovat a provádět.

Dynamický a statický jazyk SQL

Dynamické příkazy SQL (DSQL) jsou příkazy specifikovány až za běhu aplikace a odesílány na server ke zpracování. Dynamické příkazy SQL jsou například příkazy prováděné klientskými aplikacemi, které přímo nebo nepřímo používají Firebird API nějakým interaktivním nástrojem (prostřednictvím ODBC, OLE DB nebo JDBC).
Statické příkazy jsou předem předefinovány a jejich podoba je neměnná. Je to například většina příkazů jazyka ESQL. Tyto příkazy nepoužívají standardní API serveru určené pro dynamické příkazy, protože jsou přeloženy překladačem gpre na bloky příkazů interního jazyka serveru nazývaného BLR (Binary Language Representation).


Autor: Robert Habrman
Štítky: Firebird
Facebook Twitter Topčlánky.cz Linkuj.cz

Komentáře

Článek ještě nebyl okomentován.


Nový komentář

Téma:
Jméno:
Notif. e-mail *:
Komentář:
  [b] [obr]
Odpovězte prosím číslicemi: Součet čísel dvanáct a dvanáct