Diferença entre SQL e HQL

SQL vs HQL

A Linguagem de Consulta Estruturada, também conhecida popularmente como SQL, é uma linguagem de banco de dados que usa o conceito de gerenciamento de banco de dados relacional para gerenciar os dados. O gerenciamento dos dados inclui selecionar (recuperar os dados de uma única ou várias tabelas), inserir (adicionar uma ou mais linhas em uma tabela), atualizar (responsável por alterar o valor de uma ou mais linhas em uma tabela), excluir ( responsável por excluir uma ou mais linhas em uma tabela) e criação de esquema por meio de consultas.

O HQL, ou Hibernate Query Language, estende o conceito de programação orientada a objetos para o SQL existente. É fácil aprender e semelhante em sintaxe ao SQL. Possui recursos como funções agregadas e agrupar por ou ordenar por cláusulas que você vê frequentemente no SQL.

Alguns recursos do HQL:

Representa consultas SQL na forma de objetos e suas propriedades que são a base da programação orientada a objetos.

O resultado da consulta não são dados simples, mas uma combinação de objetos que podem ser modificados programaticamente. O HQL até retorna os objetos filhos como parte do resultado da consulta.

Ele contém conceitos como paginação, perfil dinâmico, et al. que são desconhecidos para desenvolvedores de SQL.

Você escreve consultas independentes do tipo banco de dados no HQL que são convertidas em consultas SQL em tempo de execução.

Implementa todos os conceitos de POO, incluindo herança.

Diferenças entre SQL e HQL:

O SQL é baseado em um modelo de banco de dados relacional, enquanto o HQL é uma combinação de programação orientada a objetos com conceitos de banco de dados relacional.

SQL manipula dados armazenados em tabelas e modifica suas linhas e colunas. HQL está preocupado com objetos e suas propriedades.

O SQL está preocupado com o relacionamento que existe entre duas tabelas, enquanto o HQL considera o relacionamento entre dois objetos..

Resumo:

1. HQL é semelhante ao SQL e também não diferencia maiúsculas de minúsculas.

2. HQL e SQL acionam consultas em um banco de dados. No caso do HQL, as consultas estão em

a forma de objetos que são convertidos em consultas SQL no banco de dados de destino.

3. SQL trabalha com tabelas e colunas para manipular os dados armazenados nele.

4. O HQL trabalha com classes e suas propriedades para finalmente ser mapeado para uma estrutura de tabela

em um banco de dados.

5. O HQL suporta conceitos como polimorfismo, herança, associação, etc. É um

linguagem poderosa e fácil de aprender que torna o SQL orientado a objetos.

6. O SQL permite modificar os dados através da inserção, atualização e exclusão de consultas. Você pode adicionar

tabelas, procedimentos ou visualizações no seu banco de dados. As permissões nesses objetos adicionados

pode ser mudado.