Здавалка
Главная | Обратная связь

Базы данных. MS Aceess. Принципы работы, возможности. Язык запросов.



Любой доступ к данным базы осуществляется через СУБД. Наиболее совершенной и одной из самых распространенных в настоящее время является реляционная СУБД Access.

СУБД Access объединяет сведения из разных источников в одной реляционной базе данных.

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

В базе данных сведения из каждого источника сохраняются в отдельной таблице. При работе с данными из нескольких таблиц устанавливаются связи между таблицами.

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

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

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

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

В окне базы данных можно работать со всеми ее объектами. Для просмотра объектов определенного типа следует выбрать соответствующую кнопку (например, «Таблицы»). С помощью пиктограмм можно открывать и изменять существующие объекты и создавать новые.

Типы данных, используемые в поле таблицы

При выборе типа данных, используемых в поле, необходимо учитывать следующее:

- Какие значения должны отображаться в поле? Например, нельзя хранить текст в поле, имеющем числовой тип данных;

- Сколько места необходимо для хранения значений в поле;

- Какие операции должны производиться со значениями в поле. Например, суммировать значения можно в числовых полях и в полях, имеющих валютный формат, а значения в текстовых полях и полях объектов OLE нельзя.

Тип данных и используемый Размер

Текстовый. Текст или комбинация текста и чисел, например, адрес, а также числа, не требующие вычислений, например, номера телефонов, номенклатурные номера или почтовый индекс Максимальный размер хранимой информации до 255 символов. Хранятся только введенные в поле символы; позиции, не использованные в текстовом поле, не хранятся.

Поле MЕМО. Длинный текст или числа, например, пометки или описание. Максимальный размер хранимой информации до 64 000 символов.

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

Дата/время. Даты и время.

Денежный. Значения валют. Денежный тип используется для предотвращения округлений во время вычислений. Предполагает до 15 символов в целой части числа и 4 - в дробной.

Счетчик. Автоматическая вставка последовательных (отличающихся на 1) или случайных чисел при добавлении записи.

Логический. Поля, содержащие только одно или два значения, таких как «Да/Нет», «Истина/Ложь», «Включено/Выключено».

Объекты OLE. Объекты (например, документы Microsoft Word, электронные таблицы Microsoft Excel, рисунки, звуки и другие данные), созданные в других программах, использующих протокол OLE. Объекты могут быть связанными или внедренными в таблицу Microsoft Access. Для отображения объекта OLE в форме или отчете необходимо использовать присоединенную рамку объекта.

Гиперссылки. Поле, в котором хранятся гиперссылки. Гиперссылка может быть либо типа путь UNC, либо URL. Максимальный размер хранимой информации до 64 000 символов.

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

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

Наиболее распространенным видом списка подстановок является список значений из ссылочной таблицы. Например, в таблице Товар можно вывести список перечня фирм из таблицы Поставщик (см. рисунок Товар : таблица).

После создания различных таблиц, содержащих данные, относящиеся к различным аспектам базы данных, необходимо продумать, каким образом Microsoft Access будет объединять эти данные при их извлечении из базы данных. Первым шагом при этом является определение связей между таблицами. После этого становится возможным создание запросов, форм и отчетов, в которых выводятся данные из нескольких таблиц сразу.

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

Связь с отношением «один-ко-многим» является наиболее часто используемым типом связи между таблицами. В такой связи каждой записи в таблице A могут соответствовать несколько записей в таблице B, а запись в таблице B не может иметь более одной соответствующей ей записи в таблице A.

При отношении «один-к-одному» запись в таблице A может иметь не более одной связанной записи в таблице B и наоборот. Этот тип связи используют не очень часто, поскольку такие данные могут быть помещены в одну таблицу. Связь с отношением «один-к-одному» используют для разделения очень широких таблиц, для отделения части таблицы по соображениям защиты, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице.

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

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

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

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

Языки баз данных

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

Язык БД имеет две составляющие:

– язык определения БД, по другому, язык определения данных – ЯОД;

– язык манипулирования данными – ЯМД.

ЯОД служит главным образом для определения логической структуры БД.

ЯМД содержит набор команд манипулирования данными, т.е. команд, позволяющих заносить данные в БД, удалять, модифицировать или выбирать существующие данные.

Запрос представляет собой программу, которая записывается на ЯМД – языке высокого уровня – и обеспечивает поиск данных в базе. Структура запроса в системах БД относительно проста, что позволяет легко его понимать, автоматически генерировать и оптимизировать. Запросы обычно рассматриваются как часть языка ЯМД.

Часто, особенно для реляционных БД, язык базы данных, и в том числе ЯМД, называют языком запросов БД.

Современные языки запросов можно разбить на две группы:

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

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

Процедурные языки запросов, как правило, присущи СУБД с сетевой, иерархической и объектно-ориентированной моделью данных, а декларативные – реляционным и объектно-реляционным СУБД. Однако практически все реляционные и объектно-реляционные СУБД позволяют организовывать SQL-запросы через языки программирования типа C++ (встроенный SQL).

Обработку запросов пользователей осуществляет в СУБД процессор запросов, включающий компилятор ЯМД, интерпретатор ЯОД и подсистему обработки запросов. Процессор осуществляет всю работу по обработке запросов к БД и определению структуры БД.

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

Исторически разработка языков запросов БД проводилась в основном в отделениях фирмы IBM и университетах США.

Язык SQL

Стандартным языком наиболее распространенных в настоящее время реляционных БД является декларативный язык SQL, разработанный в 1974 году фирмой IBM для экспериментальной реляционной СУБД System R.

SQL поддерживает следующие основные функции реляционной СУБД:

– средства ЯОД и ЯМД, т.е. позволяет определять схему реляционной БД и манипулировать данными;

– средства определения ограничений целостности БД;

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

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

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

В операторах языка SQL применяются:

– зарезервированные ключевые слова;

– идентификаторы (имена) таблиц и столбцов таблиц;

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

– идентификаторы (имен) операций и функций, используемые в выражениях

Все ключевые слова, имена функций и, как правило, имена таблиц и столбцов записываются латинскими буквами. В языке SQL не делается различия между прописными и строчными буквами. Для конструирования имен таблиц и столбцов допустимо использовать буквы, цифры и знак «_», но первым символом имени обязательно должна идти буква. Запрещено использование ключевых слов и имен функций в качестве идентификаторов таблиц и имен столбцов.

Оператор, как правило, начинается с ключевого слова-глагола (например, SELECT – выбрать, CREATE – создать и т.п.) и заканчивается знаком «;».

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

– один или несколько пробелов;

– один или несколько символов табуляции;

– один или несколько символов новой строки.

Далее, при описании синтаксиса операторов языка SQL используются следующие соглашения:

– квадратные скобки не входят в число символов оператора и определяют необязательность элементов оператора, которые можно опустить при создании реального оператора;

– знак «|» разделяет альтернативные варианты и определяет возможность выбора из двух или нескольких вариантов синтаксической конструкции, сам знак не включается в оператор;

– прописными буквами записываются ключевые слова SQL;

– в фигурных скобках записываются повторяющиеся элементы, а сами скобки не включаются в оператор;

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

SQL – очень объемный язык. Фундаментальные возможности SQL включают:

– запросы из одной таблицы;

– соединения нескольких таблиц;

– вложенные подзапросы;

– запросы с GROUP BY, HAVING и ORDER BY;

– запросы, включающие операции объединения / вычитания / пересечения результатов запросов.

Определение данных в SQL.







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.