Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Все виды энергообмена сопровождаются появлением....doc
Скачиваний:
5
Добавлен:
16.04.2019
Размер:
1.23 Mб
Скачать

2.13. Операции над данными

Определив конкретную структуру базы данных и задав явные ограничения, мы тем самым определяем схему, которой должна удовлетворять база данных в каждый конкретный момент времени. Таким образом, такая схема определяет статические свойства БД. Динамические свойства БД определяются множеством допустимых операций над данными. В каждый момент времени мы имеем конкретную реализацию базы данных. При этом, все реализации должны удовлетворять схеме, заданной определенной структурой и установленными ограничениями. Множество операций определяет допустимые действия над реализацией базы данных для преобразования ее в другую реализацию.

Не все операции приводят к изменению в реализации БД. Тем не менее динамику БД можно связать и с такими операциями, введя некоторые управляющие элементы.

Например, операции над данными можно производить, основываясь на их логических позициях (т.е. на их месте расположении) в таблицах или среди вершин графа. Хотя в модели упорядоченность данных может не отражаться, компьютерная реализация, в конечном итоге, определяет некоторый порядок. Такой порядок может быть использован для выполнения действий. Например, действие может выполняться над первой, последней, следующей, предыдущей строкой таблицы. Для обеспечения таких действий определяются так называемые индикаторы текущей, которые относятся к управляющим элементам. Это позволяет производить операции над данными, основываясь на их месте расположения. Такой вид действий называется действием посредством текущей.

Управляющие элементы не относятся к объектам БД, но связаны с реализацией БД и могут изменяться в результате выполнения операций. Совместно с конкретной реализацией БД они определяют так называемое состояние БД. Динамические аспекты данных отражаются изменением состояния БД.

Обычно требуется, чтобы объектом операции была ограниченная часть БД. Это требование, с одной стороны, необходимо для удобства пользователей, а с другой – для ограничения числа операций, выполняемых при обработке каждого конкретного запроса к БД. Данное требование достигается селекцией данных, которая определяет критерий отбора данных, над которыми должно быть произведено действие. Селекция осуществляется независимо от того, какая конкретно операция реализуется. Любая операция обычно задается в терминах действия и селекции.

Действие выражается одной из следующих обобщенных операций или их комбинацией:

1) установка текущих – установка одной или более логических позиций в БД;

2) выборка – получение данных из БД или обеспечение пользователю доступности к выбранным данным;

3) включение – добавление новых данных;

4) удаление данных;

5) обновление – изменение существующих данных.

Эти действия применяются к атрибутам, типам объектов или типам связей.

Основными видами селекции являются:

1) селекция посредством текущей (логической позиции);

2) адресуемость по содержимому (с помощью значений данных);

3) селекция по связности данных (с помощью связей между данными).

Селекция посредством текущей. Упорядочение строк в таблице или значений в вершинах графа по логическим позициям может быть фиксированным (для таблиц записей) или произвольным (например, в зависимости от последнего действия). Например, порядок может быть хронологическим или определяемым последовательностью обновления данных. В этом случае не гарантируется, что некоторая строка x будет всегда находиться в фиксированной позиции относительно строки y. Селекция, основанная на логических позициях, называется селекцией посредством текущей.

Адресуемость по содержимому. Селекция данных может быть задана значениями, относящимися к столбцам таблицы или вершинам графа. Например, можно произвести селекцию строк таблицы со значениями, меньшими 2000, в столбце Зарплата. Этот тип селекции называется адресуемостью по содержимому. Адресуемость по содержимому обычно принимает форму критерия селекции по значениям атрибутов. Этот критерий может определять как простые условия, так и сложные логические условия отбора данных.

Простое условие определяется на одном атрибуте и одном значении атрибута. Обычно оно имеет следующий вид:

<имя атрибута> <оператор сравнения> <значение>

Оператор сравнения может быть один из операторов <, >, <=, >=, =, ≠. Например, простое условие может быть следующим

Зарплата < 2000

Сложные критерии задаются логическими выражениями, составленными из простых условий с помощью логических операторов AND, OR, NOT. Например, критерий селекции всех женщин, зарабатывающих более 2000, имеет вид

Пол = жен AND Зарплата > 2000

Селекция по связности данных. Селекция данных может производиться не только посредством текущей и по значению, но и в соответствии с логическими связями. Например, при наличии связи между типами объектов ЛИЧНОСТЬ и АВТОМОБИЛЬ можно осуществить селекцию всех лиц, владеющих автомобилями. Селекция такого вида называется селекцией по связности данных.

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

Навигационными называются операции, результатом которых может быть лишь один объект (значение атрибута, экземпляр типа объекта или связи), полученный при прохождении по логическому пути в структуре БД. Процесс прохождения по логическому пути называется навигацией. Навигационные операции всегда предполагают селекцию посредством текущей.

Спецификационные операции определяют (то есть специфицируют) формирование новой структуры, определяемой на структуре БД, которой в общем случае соответствует множество объектов, существующих в БД. Для спецификационных операций селекция посредством текущей необязательна.