Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

114

.pdf
Скачиваний:
26
Добавлен:
05.06.2015
Размер:
1.45 Mб
Скачать

Правила Кодда

10.Независимость контроля целостности. Все необходимое для поддержания целостности данных должно храниться в словаре данных.

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

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

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

92

Свойства и типы полей

Свойства и типы полей

Поля — это основные элементы структуры базы данных. Они обладают свойствами. От свойств полей зависит, какие типы данных можно вносить в поле, а какие нет, а также то, что можно делать с данными, содержащимися в поле.

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

Очевидным уникальным свойством любого поля является его имя. Одна база данных не может иметь двух полей с одинаковым именем. Кроме имени у поля есть еще свойство подпись. Подпись — это та информация, которая отображается в заголовке столбца. Ее нельзя путать с именем поля, хотя если подпись не задана, то в заголовке отображается имя поля. Разным полям, например, можно задать одинаковые подписи.

Разные типы полей имеют разное назначение и разные свойства:

1.Основное свойство текстового поля — размер.

2.Числовое поле служит для ввода числовых данных. Оно тоже имеет размер, но числовые поля бывают разными, например для ввода целых чисел и для ввода действительных чисел. В последнем случае кроме размера поля задается также размер десятичной части числа.

3.Поля для ввода дат или времени имеют тип Дата/ время.

4.Для ввода логических данных, имеющих только два значения (Да или Нет; 0 или 1; Истина или Ложь и т.п.), служит специальный тип — Логическое поле. Длина такого поля всегда равна 1 байту, поскольку этого более чем достаточно, чтобы выразить логическое значение.

93

Свойства и типы полей

5.Особый тип поля — денежный. Денежные суммы можно хранить и в числовом поле, но в денежном формате

сними удобнее работать. В этом случае компьютер изображает числа вместе с денежными единицами, различает рубли и копейки, фунты и пенсы, доллары и центы.

6.В современных базах данных можно хранить не только числа и буквы, но и картинки, музыкальные клипы и видеозаписи. Поле для таких объектов называется полем объекта OLE (Object Linking and Embedding — объектное связывание и внедрение. OLE разработан компанией Microsoft и является протоколом обмена данными, которые представлены в виде объектов).

7.Если нужно вставить в поле длинный текст (более 256 символов), для этого служит поле типа MEMO. В нем можно хранить до 65 535 символов. Особенность поля MEMO состоит в том, что реально эти данные хранятся не в поле, а в другом месте, а в поле хранится только указатель на то, где расположен текст.

8.Поле Счетчик, на первый взгляд, является обычным числовым полем, но оно имеет свойство автоматического наращивания. Если в базе есть такое поле, то при вводе новой записи в него автоматически вводится число, на единицу большее, чем значение того же поля в предыдущей записи. Это поле удобно для нумерации записей.

94

Виды и способы организации запросов

Виды и способы организации запросов

Запрос можно представить себе как точку зрения на данные, включенные в таблицу. Запросы служат для селекции и фильтрации набора данных. Они позволяют выбрать из базы только необходимую информацию, которая соответствует определенному критерию (условию) и нужна для решения конкретной задачи.

В качестве примера рассмотрим организацию запросов в системе управления базами данных (СУБД) Microsoft Access. Результат обработки запроса представляет собой таблицу, называемую Dynaset. В эту таблицу включены выбранные из основной таблицы (или нескольких таблиц) блоки данных, которые удовлетворяют критериям запроса. Dynaset — динамический, временный набор данных, поэтому при каждом выполнении запроса он строится вновь на основе «свежих» табличных данных.

Microsoft Access дает большие возможности в гибкости проектирования запросов, а именно в ней можно:

+выбрать поля, т.е. нет необходимости включать все поля таблицы в запрос;

+выбрать записи, т.е. можно специфицировать запрос таким образом, что получите данные определенного вида;

+отсортировать записи, т.е. можно просматривать записи в определенном порядке;

+запрашивать данные из нескольких таблиц, которые могут обрабатываться вместе, и соответственно просмотреть совмещенные данные;

+запрашивать данные из других баз данных, таких как Microsoft FoxPro, Paradox, dBASE, Betrieve и Microsoft или Sybase SQL серверы;

+выполнять вычисления, создавать новые поля, которые будут содержать результаты вычислений;

+использовать запрос в качестве источника данных для формуляров, отчетов и других запросов;

95

Виды и способы организации запросов

+изменять данные в таблицах, т.е. можно обновлять, удалять, добавлять группы записей все сразу;

+создать новую таблицу на базе существующей таблицы или группы таблиц.

Выделяют два типа запросов:

1.QBE-запросы (Query By Example — запрос по образцу). Пользователь дает им определения, специфицируя отдельные параметры в окне проектирования с использованием подсказок (образцов).

2.SQL-запросы (Structured Query Language — структурированный язык запросов). Пользователь формулирует их с использованием инструкций и функций, выстраивая описание. QBE-запрос Access легко транслирует в соответствующий SQL-запрос. Обратная операция тоже не составляет труда.

Запросы можно создавать с помощью Конструктора запросов. Он ускоряет проектирование нескольких специальных типов запросов:

+запросы кросс-таблиц представляют данные в компактном суммированном формате;

+запросы нахождения дубликатов находят дубликатные записи в выбранной таблице или запросе;

+запросы нахождения несоответствия находят все записи в таблице, которые не связаны с записями в другой таблице;

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

нию) эти записи из таблицы оригинала.

Можно воспользоваться запросом для проведения вычислений с блоками данных. Он может задать в каждом поле некоторую функцию, обрабатывающую содержимое этого поля. Результат обработки выдается в Dynaset. Функция обработки задается в строке Total, которая появляется после нажатия в пиктографическом меню кнопки с греческой литерой «сигма». Саму функцию можно выбрать в этой строке, развернув список возможных значений.

Спомощью структурированного языка запросов SQL

врамках MS Access пользователь может сформулировать

96

Система управления базами данных Microsoft Access

Системауправления

базами данных Microsoft Access

Система управления базами данных (СУБД) MS Access ориентирована на работу с объектами, к которым относятся таблицы базы данных, формы, запросы, отчеты, макросы и модули. Для типовых процессов обработки данных — ввода, просмотра, обновления, поиска по заданным критериям, получения отчетов, Access позволяет конструировать в диалоговом режиме такие объекты, как формы, запросы, отчеты. Эти объекты состоят из графических элементов, называемых элементами управления. Основные элементы управления служат для связи объектов с записями таблиц, являющихся источниками данных.

Множество мастеров MS Access помогает пользователю выполнить работы, не прибегая к конструированию. Мастера позволяют создать новые формы, запросы, отчеты, анализировать таблицы базы данных и даже полностью создать одну из многочисленных типовых баз данных.

Для создания приложений пользователя могут использоваться макросы и модули на языке программирования Visual Basic.

Каждый объект и элемент управления имеет свои свойства, определяя которые можно настраивать объекты и элементы управления.

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

Запросы создаются пользователем для выборки нужных данных из одной или нескольких связанных таблиц. Запрос может формироваться с помощью запросов по образцу QBE или с помощью языка структурированных запросов SQL. С помощью запроса также можно обновить, удалить или добавить данные в таблицы или создать новые таблицы на основе уже существующих.

Формы предназначены для ввода, просмотра и корректировки взаимосвязанных данных базы на экране в удобном виде, который может соответствовать привычному для пользователя документу. Формы также могут исполь-

Система управления базами данных Microsoft Access

зоваться для создания панелей управления в приложении пользователя.

Отчеты предназначены для формирования выходного документа, предназначенного для вывода на печать.

Макросы содержат описание действий, которые должны быть выполнены в ответ на некоторое событие. Каждое действие реализуется макрокомандой. Выбор макрокоманд и задание параметров, используемых ими при выполнении, является простой автоматизированной операцией. Макрос позволяет объединить разрозненные операции обработки данных в приложении.

Модули содержат программы на языке Visual Basic, которые могут разрабатываться пользователем для реализации нестандартных процедур при создании приложения.

4*

99

Система управления базами данных Oracle

Системауправления базами данных Oracle

Президент Oracle Corp. Лэрри Эллисон основал компанию в 1977 г. вместе с Робертом Майнором в Редвуде, штат Калифорния. Первая реляционная система управления базами данных (СУБД) фирмы базировалась на модели IBM System/R и была первой системой, в которой использовался язык SQL, разработанный фирмой IBM.

В настоящее время СУБД Oracle поддерживают свыше 80 вариантов операционной среды в широком диапазоне, включая мэйнфреймы IBM, мини-компьютеры DEC VAX, мини-компьютеры с операционной системой UNIX, Windows NT и множество других платформ.

Oracle является СУБД, поскольку она поддерживает словарь данных и множество уровней безопасности, предлагает средства, гарантирующие целостность данных, организует параллельный доступ и обеспечивает языковой интерфейс. Oracle обслуживает словарь данных в схемах SYS и SYSTEM, которые сохраняются в табличном пространстве SYSTEM. Oracle предлагает учет пользователей на уровне базы данных, идентификацию пользователей средствами операционной системы, определение и отслеживание их ролей, привилегий и профилей. Также поддерживаются представления SQL. Использование ресурсов регулируется профилями. Целостность обеспечивается с помощью механизма декларативной целостности для первичных и внешних ключей. При этом нужно просто указать ключ (тогда отпадает необходимость в написании специальных программ, которые должны были бы гарантировать целостность).

Oracle формирует уникальный индекс для каждого первичного ключа. Дополнительно пользователь может заказать формирование индекса и для внешних ключей. Oracle позволяет также использовать принятые в SQL ограничения (constraints) и триггеры (хранимые процедуры, которые запускаются при выполнении определенных действий с таблицей). По умолчанию блокировка

100

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]