Мазмұны:

HQL немесе критерийлердің қайсысы жақсы?
HQL немесе критерийлердің қайсысы жақсы?

Бейне: HQL немесе критерийлердің қайсысы жақсы?

Бейне: HQL немесе критерийлердің қайсысы жақсы?
Бейне: Hadoop Processing Frameworks 2024, Мамыр
Anonim

Критерийлер , теорияда бір қарағанда аз үстеме шығыс болуы керек HQL сұрау (мен алатын атаулы сұраулардан басқа). Бұл себебі Критерийлер ештеңені талдаудың қажеті жоқ. HQL сұраулар ANTLR негізіндегі талдаушымен талданады, содан кейін алынған AST SQL-ге айналады. Критерийлер - Жасалмас бұрын талдау қажет емес.

Сонымен, HQL мен критерийлердің айырмашылығы неде?

HQL таңдалған және таңдалмаған операцияларды орындай алады. Критерийлер тек деректерді таңдай алады, пайдалану арқылы таңдалмаған әрекеттерді орындай алмайсыз критерийлері сұраулар. HQL беттеуді қолдамайды, бірақ беттеу арқылы қол жеткізуге болады Критерийлер . Критерийлер SQL инъекциясынан қауіпсіз.

Екіншіден, Hibernate Criteria API артықшылығы неде? жылы Күту күйі , the Criteria API құруға көмектеседі критерийлері нысандарды динамикалық түрде сұрау. Критерийлер HQL және жергілікті SQL сұрауларынан басқа деректерді іздеудің тағы бір әдісі болып табылады. Бастапқы артықшылығы -ның Criteria API ол ешқандай қатаң кодталған SQL мәлімдемелерін пайдаланбай деректерді өңдеуге интуитивті түрде жасалған.

Сол сияқты, сіз HQL немесе SQL қайсысы жақсы екенін сұрай аласыз.

Жергілікті SQL қарағанда жылдамырақ болуы міндетті емес HQL . HQL соңында да аударылады SQL (көрсетілген мәлімдемені show_sql сипаты шын мәніне орнатылған қолданбаны іске қосқан кезде көре аласыз). Дерекқорға қол жеткізуде уақыт деректерді қолданбаға тасымалдау кезінде емес, жолды іздеу кезінде жоғалады.

Критерийлерді қалай жасайсыз?

Сұрау үшін шартты қолдану

  1. Сұрауыңызды Дизайн көрінісінде ашыңыз.
  2. Сұрау құрастыру торында шартты қосқыңыз келетін өрістің Шарттар жолын басыңыз.
  3. Шарттарды қосып, ENTER пернесін басыңыз.
  4. Деректер парағы көрінісінде нәтижелерді көру үшін Іске қосу түймесін басыңыз.

Ұсынылған: