Три манифеста баз данных ретроспектива и перспективы

       

Краткая характеристика языка запросов OQL


В кратком и неформальном описании языка мы будем по возможности строго следовать манере и последовательности изложения, принятым в стандарте ODMG 3.0, меняя только примеры.

Разработчики языка основывались на следующих основных принципах:

  • OQL опирается на объектную модель ODMG.


  • OQL очень близок к SQL /92. Расширения относятся к объектно-ориентированным понятиям, таким как сложные объекты, объектные идентификаторы, путевые выражения, полиморфизм, вызов операций и отложенное связывание.


  • В OQL обеспечиваются высокоуровневые примитивы для работы с множествами объектов, но, кроме того, имеются настолько же эффективные примитивы для работы со структурами, списками и массивами.


  • OQLявляется функциональным языком, допускающим неограниченную компонируемость операций, если операнды не выходят на пределы системы типов. Это является следствием того факта, что результат любого запроса обладает типом, принадлежащим к модели типов ODMG, и поэтому к результату запроса может быть применен новый запрос.


  • OQL не является вычислительно полным языком. Он представляет собой простой язык запросов.


  • Операторы языка OQL могут вызываться из любого языка программирования, для которого в стандарте ODMG определены правила связывания. И наоборот, в запросах OQL могут присутствовать вызовы операций, запрограммированных на этих языках.


  • В OQL не определяются явные операции обновления, а используются вызовы операций, определенных в объектах для целей обновления.


  • В OQL обеспечивается декларативный доступ к объектам. По этой причине OQL -запросы могут быть легко оптимизированы.


  • Можно легко определить формальную семантику OQL.




  • Содержание раздела