Cтраница 3
Если элементарные сообщения, представляющие предпосылки, определены, в базу данных добавляются элементарные сообщения - представления действий. Таким образом, элементарный процесс обеспечивает порождение новых элементарных сообщений на основе заданных и является мощным средством спецификации процедур баз данных. Например, с помощью элементарного процесса на основе даты рождения некоторой личности может быть вычислен ее возраст. Элементарный процесс используется для реализации виртуального сообщения ( или виртуального атрибута) ( См. [31]
На основе базовых операций возможно конструирование более универсальных запросных средств, а на основе элементарных процессов - построение процедур базы данных. [32]
Динамические свойства процедур и функций базы данных ( каждая из них может быть использована в различных прикладных программах), требуют, чтобы все локальные данные такой программы ( константы, процедуры, функции) содержались в ней самой и загружались вместе с ее кодом. По этой причине процедура базы данных в процессе трансляции рассматривается как самостоятельная программа с разделами кода, констант и локальных подпрограмм. Локальные переменные процедуры базы данных размещаются в общем стеке программы. Интерфейс процедуры базы данных с другими глобальными данными отражается в модели ее типа. При вызове процедуры базы данных все используемые ею глобальные объекты загружаются в оперативную память по методу раскрутки с соответствующей настройкой по месту. [33]
Процедуры отличаются от простых операций тем, что могут выполнять большое количество действий над данными и при своем выполнении охватывать обширные области базы данных. Для многих процедур алгоритмы их выполнения зависят от значений данных и управляются этими значениями. Поэтому процедуры базы данных - мощные и гибкие средства, позволяющие существенно расширить динамические свойства модели данных. [34]
В разделе 9.2 мы упомянули операции над схемой, которые позволяют определить новые категории объектов и бинарные отношения категорий. Такие операции могут использоваться для построения процедур баз данных. [35]
Снова инструментальная система должна предоставлять удобный аппарат для составления новых программ обработки данных, их хранения в базах данных, пополнения и ревизии в процессе работы системы. Снова требуется упоминавшийся уже выше аппарат процедур баз данных как единое средство реализации всех этих возможностей. [36]
Несвязанный элемент, применяемый в качестве кнопки, аналогичен производному элементу. Для него используется тип данных отображения Button и исполнйется процедура, а не функция или SQL-выражение. Примером может служить кнопка для выдачи сообщения с последующим исполнением процедуры базы данных. [37]
Что касается реляционных спецификационных языков, то их можно охарактеризовать как интегрированное средство манипулирования данными и описания данных. Однако когда такой язык используется для описания взгляда, он приобретает определенные черты, свойственные ЯОД. С другой стороны, например, для спецификации ограничений и процедур баз данных применяются операторы языка данных. [38]
Динамические свойства процедур и функций базы данных ( каждая из них может быть использована в различных прикладных программах), требуют, чтобы все локальные данные такой программы ( константы, процедуры, функции) содержались в ней самой и загружались вместе с ее кодом. По этой причине процедура базы данных в процессе трансляции рассматривается как самостоятельная программа с разделами кода, констант и локальных подпрограмм. Локальные переменные процедуры базы данных размещаются в общем стеке программы. Интерфейс процедуры базы данных с другими глобальными данными отражается в модели ее типа. При вызове процедуры базы данных все используемые ею глобальные объекты загружаются в оперативную память по методу раскрутки с соответствующей настройкой по месту. [39]
Язык программирования Бояз разработан автором и затем реализован на ЭВМ БЭСМ-6. Излагается система типов данных этого языка и операторы манипулирования данными. Показывается, как предложенными средствами реализуются базы данных различных моделей. Объясняется механизм процедур баз данных и его применение для создания языков запросов конечных пользователей. [40]
В семантической бинарной модели спецификации ограничений могут быть частью спецификации операций, они определяют ограничения, которые должны контролироваться и поддерживаться при выполнении операции. Если ограничение нарушается, то операция опускается или выполняются действия, заданные пользователем для обработки данной ситуации. Ограничение может быть локальным в том смысле, что оно относится только к явно специфицированным объектам операции, или глобальным, распространяющимся также на другие объекты. В последнем случае операции приближаются к процедурам базы данных, охарактеризованным в гл. [41]
В первом случае не обойтись без средств, встроенных в инструментальную систему, во втором - для каждой информационной системы строится свой набор программ анализа ее работы. Эти программы могут быть оформлены в виде процедур базы данных и затем вызываться автоматически соответствующими программами обработки или администратором базы данных при проведении комплексной или выборочной проверок системы. Как и во всех предыдущих случаях, необходима возможность пополнения и ревизии процедур этого вида. [42]
Более того, память программы может оказаться недостаточной для размещения всех процедур и функций базы данных, необходимых при ее выполнении. По этой причине в системах Бояз-6 и Атлант предложен и реализован механизм динамической загрузки процедур ( функций) - перемен-ных базы данных. При этом механизме тела процедур-переменных загружаются в так называемую динамическую часть стека программы на время их выполнения. Благодаря этому одна и та же часть динамического стека может использоваться для хранения тел различных процедур базы данных. [43]
Динамические свойства процедур и функций базы данных ( каждая из них может быть использована в различных прикладных программах), требуют, чтобы все локальные данные такой программы ( константы, процедуры, функции) содержались в ней самой и загружались вместе с ее кодом. По этой причине процедура базы данных в процессе трансляции рассматривается как самостоятельная программа с разделами кода, констант и локальных подпрограмм. Локальные переменные процедуры базы данных размещаются в общем стеке программы. Интерфейс процедуры базы данных с другими глобальными данными отражается в модели ее типа. При вызове процедуры базы данных все используемые ею глобальные объекты загружаются в оперативную память по методу раскрутки с соответствующей настройкой по месту. [44]
В большинстве случаев несложно подтвердить достоверность с помощью ограничения проверки, поскольку при этом в качестве SQL-выражения можно использовать некоторую функцию базы данных. Определить, где именно активизируются операции подтверждения достоверности значений столбца, совсем не просто. Кроме того, в процедуре можно выполнять операции, которые невозможно выполнить с помощью функции, ограниченной с точки зрения SQL. Например, в процедуре базы данных, вызываемой триггером, внести запись в таблицу аудита при неудачном подтверждении достаточно легко. Однако при использовании функции в ограничении проверки это может стать невыполнимой задачей. [45]