SQL срещу HQL
Структуриран език за заявки, известен още като SQL, е език на базата данни, който използва концепцията за управление на релационни бази данни за управление на данните. Управлението на данните включва селекция (извлича данните от една или няколко таблици), вмъкване (добавяне на един или повече редове в таблица), актуализация (отговорна за промяна на стойността на един или повече редове в таблица), изтриване ( отговорен за изтриването на един или повече редове в таблица) и създаването на схеми чрез заявки.
HQL или Hibernate Query Language разширява концепцията за обектно-ориентирано програмиране до съществуващ SQL. Той е лесен за научаване и подобен по синтаксис на SQL. Той има функции като агрегирани функции и групиране или подреждане по клаузи, които често виждате в SQL.
Някои функции на HQL:
Той представлява SQL заявки под формата на обекти и неговите свойства, които са в основата на обектно-ориентираното програмиране.
Резултатът от заявката не е обикновени данни, а комбинация от обекти, които могат да се променят програмно. HQL дори връща дъщерните обекти като част от резултата от заявката.
Той съдържа понятия като пагинация, динамично профилиране и др. които са неизвестни за SQL разработчиците.
Вие пишете независими заявки от тип база данни в HQL, които по време на изпълнение се преобразуват в SQL заявки.
Той прилага всички OOP концепции, включително наследяване.
Разлики между SQL и HQL:
SQL се основава на модел на релационна база данни, докато HQL е комбинация от обектно-ориентирано програмиране с концепции за релационна база данни.
SQL манипулира данните, съхранявани в таблици и променя своите редове и колони. HQL е загрижен за обектите и неговите свойства.
SQL е загрижен за връзката, която съществува между две таблици, докато HQL разглежда връзката между два обекта.
Резюме:
1. HQL е подобен на SQL и също е нечувствителен към регистъра.
2. HQL и SQL и двете пожарни заявки в база данни. В случай на HQL, заявките са в
формата на обекти, които са преведени на SQL заявки в целевата база данни.
3. SQL работи с таблици и колони, за да манипулира данните, съхранявани в него.
4. HQL работи с класове и техните свойства, за да бъде окончателно картографиран в структура на таблицата
в база данни.
5. HQL поддържа понятия като полиморфизъм, наследяване, асоцииране и т.н. Това е a
мощен и лесен за усвояване език, който прави SQL обектно ориентиран.
6. SQL ви позволява да променяте данните чрез вмъкване, актуализиране и изтриване на заявки. Можете да добавите
таблици, процедури или изгледи към вашата база данни. Разрешенията за тези добавени обекти
може да бъде променен.