Differenza tra SQL e HQL

SQL vs HQL

Structured Query Language, anche popolarmente noto come SQL, è un linguaggio di database che utilizza il concetto di gestione di database relazionali per gestire i dati. La gestione dei dati include select (recupera i dati da una singola o più tabelle), insert (aggiunge una o più righe in una tabella), update (responsabile della modifica del valore di una o più righe in una tabella), delete ( responsabile dell'eliminazione di una o più righe in una tabella) e della creazione dello schema tramite query.

HQL, o Hibernate Query Language, estende il concetto di programmazione orientata agli oggetti a SQL esistente. È facile da imparare e simile nella sintassi di SQL. Ha caratteristiche come le funzioni di aggregazione e le clausole group by o order by che si vedono spesso in SQL.

Alcune caratteristiche di HQL:

Rappresenta le query SQL sotto forma di oggetti e le sue proprietà che sono alla base della programmazione orientata agli oggetti.

Il risultato della query non è un semplice dato ma una combinazione di oggetti che possono essere modificati a livello di codice. HQL restituisce anche gli oggetti figlio come parte del risultato della query.

Contiene concetti come impaginazione, profiling dinamico, et al. che sono sconosciuti agli sviluppatori SQL.

Si scrivono query indipendenti di tipo database in HQL che vengono convertite in query SQL in fase di runtime.

Implementa tutti i concetti OOP inclusa l'ereditarietà.

Differenze tra SQL e HQL:

SQL è basato su un modello di database relazionale mentre HQL è una combinazione di programmazione orientata agli oggetti con concetti di database relazionale.

SQL manipola i dati memorizzati nelle tabelle e modifica le sue righe e colonne. HQL è preoccupato per gli oggetti e le sue proprietà.

SQL è preoccupato per la relazione che esiste tra due tabelle mentre HQL considera la relazione tra due oggetti.

Sommario:

1. HQL è simile a SQL ed è anche senza distinzione tra maiuscole e minuscole.

2. HQL e SQL eseguono entrambe le interrogazioni in un database. Nel caso di HQL, le query sono in

la forma degli oggetti tradotti in query SQL nel database di destinazione.

3. SQL funziona con tabelle e colonne per manipolare i dati memorizzati in esso.

4. HQL funziona con le classi e le loro proprietà per essere infine mappate a una struttura di tabella

in un database.

5. HQL supporta concetti come il polimorfismo, l'ereditarietà, l'associazione, ecc. È a

linguaggio potente e facile da imparare che rende orientato agli oggetti SQL.

6. SQL consente di modificare i dati mediante l'inserimento, l'aggiornamento e l'eliminazione delle query. Puoi aggiungere

tabelle, procedure o viste al tuo database. Le autorizzazioni per questi oggetti aggiunti

può essere cambiato.