Rozdíl mezi SQL a HQL

SQL vs HQL

Strukturovaný dotazovací jazyk, také známý jako SQL, je databázový jazyk, který používá ke správě dat koncept správy relačních databází. Správa dat zahrnuje select (načte data z jedné nebo více tabulek), insert (přidá jeden nebo více řádků v tabulce), update (zodpovědný za změnu hodnoty jednoho nebo více řádků v tabulce), delete ( odpovědný za odstranění jednoho nebo více řádků v tabulce) a vytvoření schématu pomocí dotazů.

HQL neboli Hibernate Query Language rozšiřuje koncept objektově orientovaného programování na existující SQL. Je snadné se naučit a podobné v syntaxi jako SQL. Má funkce jako agregované funkce a seskupení nebo řazení podle klauzulí, které často vidíte v SQL.

Některé vlastnosti HQL:

Představuje dotazy SQL ve formě objektů a jejich vlastností, které jsou základem objektově orientovaného programování.

Výsledkem dotazu nejsou prostá data, ale kombinace objektů, které lze programově upravit. HQL dokonce vrátí podřízené objekty jako součást výsledku dotazu.

Obsahuje pojmy jako stránkování, dynamické profilování atd. které jsou vývojářům SQL neznámé.

V HQL píšete nezávislé dotazy typu databáze, které jsou za běhu převedeny na dotazy SQL.

Implementuje všechny OOP koncepty včetně dědičnosti.

Rozdíly mezi SQL a HQL:

SQL je založeno na modelu relační databáze, zatímco HQL je kombinací objektově orientovaného programování s koncepty relační databáze.

SQL manipuluje s daty uloženými v tabulkách a upravuje své řádky a sloupce. HQL se zajímá o objekty a jejich vlastnosti.

SQL se zajímá o vztah, který existuje mezi dvěma tabulkami, zatímco HQL zvažuje vztah mezi dvěma objekty.

Souhrn:

1. HQL je podobné SQL a je také necitlivé na velikost písmen.

2. HQL a SQL oba spouštějí dotazy v databázi. V případě HQL jsou dotazy v

forma objektů, které jsou přeloženy do dotazů SQL v cílové databázi.

3. SQL pracuje s tabulkami a sloupci pro manipulaci s daty v něm uloženými.

4. HQL pracuje s třídami a jejich vlastnostmi a nakonec je mapována do struktury tabulky

v databázi.

5. HQL podporuje pojmy jako polymorfismus, dědičnost, asociace atd. Je to

výkonný a snadno naučitelný jazyk, který umožňuje objektově orientovat SQL.

6. SQL umožňuje upravovat data pomocí dotazů na vložení, aktualizaci a odstranění. Můžeš přidat

tabulky, procedury nebo pohledy do vaší databáze. Oprávnění k těmto přidaným objektům

může být změněno.