KNOW INTUIT, лекция, език QBE (заявка по пример)
Езикът с много странното име Query-By-Example "Query by pattern" (QBE) се основава на предикатно смятане на домейни. Разработен е от Moishe Zluf през 1974-1975 г. в IBM. Както си спомняте, основната работа на Код върху релационната алгебра се появява през 1970 г. Така че предикатното смятане на домейни беше внедрено в езика доста бързо.
Странната дума в името "според модела" се обяснява с обикновено случайните обстоятелства, че според M. Zluf е по-удобно за неквалифициран потребител да избере някаква стойност на тази променлива като имена на променливи. Например в таблицата emp, която вече познавате, променливата на домейна в колоната ename може да се нарича SMITH или KING или някаква друга стойност от домейна ename.
9.1 Езикова структура
Езикът QBE, подобно на други езици за бази данни, включва два подезика:
- DDL - средства за дефиниране на структури от данни и ограничения за интегритет;
- JMD - инструменти за манипулиране на данни и инструменти за писане на заявки към бази данни. Няма език за управление на данни.
Визуалните инструменти на QBE са изключително стегнати, което ги прави достъпни и за потребители без програмистска квалификация. Причината е, че QBE съдържа два неразривно свързани компонента - графичен, представляващ шаблони на таблици и блок с условия, и вербален, съдържащ минимален набор от лесни за запомняне команди.
Както винаги, ние проверяваме всичко сами. За целта ви е предоставен специално разработен инструмент. В края на лекцията е даден пример за QBE заявка в Microsoft Access. Горещо ви препоръчвам да използвате материалите на Access, предоставени на уебсайта на книгата, и да работите с няколко примера в нея. Това ще ви дадеправилно разбиране на възможностите за прилагане на езика.
9.2 Основи на QBE
Когато стигнете до инструментите, работещи в QBE, виждате в старите (предграфически) версии оригиналното изображение като празен шаблон, в който потребителят въвежда името на таблицата (фигура 9.1).
В графичния интерфейс на предлагания ви инструмент се появява празен правоъгълник (фигура 9.2).
Ако съществува таблица с посоченото име, ще се появи лента с два реда. Първата изброява всички колони на таблицата, а втората е празна. Примерен шаблон за таблица с извикани задължения е показан в таблица 9.1.
Долните редове, макар и празни, са предназначени за въвеждане на команди, променливи и релационни операции. Какво може да се напише в тях? Една от ограничения (добре че е ограничен) набор от команди, а именно:
- I. (вмъкване) - разрешаване;
- Г. (изтриване) - изтриване;
- U. (update) - актуализация;
- П. (печат) - печат.
Можете да дефинирате константи, променливи и връзки.