ВЫРАЖЕНИЕ ПУТИ В ЯЗЫКЕ СТРУКТУРИРОВАННЫХ ЗАПРОСОВ

1. Система, которая облегчает запрос к базе данных, содержащая:
компилятор, который принимает запрос на взаимодействие с базой данных; и
компонент реляционного соединения, который расширяет соответствующий язык запросов посредством соединения ссылкой, чтобы получить семантику существующей связи среди множества таблиц, ассоциированных с базой данных, для уменьшения синтаксиса, требуемого для выполнения просмотра или навигации посредством него.
2. Система по п.1, в которой существующая связь включает в себя зависимости первичный ключ-внешний ключ, полученные в реляционных метаданных.
3. Система по п.2, в которой соединение ссылкой поддерживается между источником левой таблицы и источником правой таблицы с одной ссылочной привязкой, существующей между ними.
4. Система по п.3, в которой одна ссылочная привязка включает в себя однозначное преобразование для выражения соединения ссылкой в эквивалентные внутренние соединения ассоциированных столбцов.
5. Система по п.1, в которой компилятор преобразовывает соединение ссылкой во внутренние соединения и обеспечивает «прыжки» по таблицам во время навигации по базе данных.
6. Система по п.1, в которой компилятор однозначно преобразует краткие нотации, реализованные посредством соединения ссылкой, если только существует один путь среди зависимостей.
7. Система по п.1, также содержащая дополнительный компонент реляционного соединения, который динамически изучает различные зависимости, созданные в базе данных.
8. Система по п.1, также содержащая представления документа, на которые ссылается пользователь, чтобы получить требуемые значения, и для выполнения обновления базовой таблицы в надлежащем порядке, чтобы удовлетворить привязкам ссылочной целостности.
9. Система по п.1, в которой компилятор также содержит анализатор/алгебраический вычислитель, который преобразовывает язык структурированных запросов (SQL) для соединения ссылкой в эквивалентное дерево реляционной алгебры.
10. Система по п.9, в которой компилятор также содержит оптимизатор, который ищет пространство для эквивалентной схемы запроса для этого соединения ссылкой.
11. Система по п.10, также содержащая компонент упрощения, который выполняет перезаписи дерева запросов, созданного анализатором/алгебраическим вычислителем.
12. Способ упрощения запроса к базе данных, содержащий этапы, на которых
определяют связи согласно воплощениям хранения элемента среди таблиц, ассоциированных с базой данных;
расширяют язык запросов посредством соединения ссылкой для получения семантики связи, и уменьшения синтаксиса, требуемого для выполнения просмотра или навигации в базе данных; и
формулируют язык запросов с синтаксической простотой соединения ссылкой.
13. Способ по п.12, также содержащий однозначное отображение крайних нотаций, реализованных посредством соединения ссылкой только через один путь, который существует среди зависимостей.
14. Способ по п.13, также содержащий использование существующих знаний о ссылочных привязках для однозначного преобразования выражения соединения ссылкой в эквивалентное внутреннее соединение в отношении столбцов, которые включены в ссылочные привязки между таблицами.
15. Способ по п.14, также содержащий использование привязки в соединении ссылкой для удаления объекта.
16. Способ по п.12, также содержащий формулирование представления для взаимодействия пользователя с базой данных.
17. Способ по п.16, также содержащий преобразование вставки объекта в набор вставок и в базовые таблицы.
18. Способ по п.17, также содержащий преобразование соответствующих примитивных обновлений в отношении лежащих в основе базовых таблиц для выполнения обновления базовой таблицы в порядке, который удовлетворяет привязке ссылочной целостности.
19. Способ по п.18, также содержащий обновление объекта целиком или по его частям.
20. Система, которая облегчает запросы к базе данных, содержащая:
средство для компиляции запроса, который взаимодействует с базой данных; и
средство для расширения соответствующего языка запросов для получения семантики существующей связи среди множества таблиц, ассоциированных с базой данных, для уменьшения синтаксиса, требуемого для выполнения просмотра или навигации посредством него.