Смотреть что такое "БД (значения)" в других словарях. Что такое база данных — понятие база данных в информатике

База данных представляет собой хранилище данных, в которых данные хранятся в организованном порядке.

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

Знаете ли вы что?
"База данных Интеграция" привела к революции в бизнесе, ИТ, и образовательном секторе, предоставляя широкий спектр возможностей для управления и анализа данных.

Структура базы данных

Система базы данных состоит из следующих элементов:

Таблицы: Данные хранятся в строках (записи) и столбцах (поля).

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

Запросы: Запросы написаны для извлечения строк и / или столбцов на основе заранее определенного состояния.

Наиболее известные базы данных это: MySQL, SAP, Oracle, IBM DB2 и т.д. СУБД или "система управления базы данных» используется в качестве интерфейса для связи между пользователем и базой данных.

Что такое базы данных и для где они используются?

Хранение данных / Вставка: Начальная фаза (перед вводом данных) включает в себя создание структуры данных, таких как таблицы (с необходимым количеством строк и столбцов). Затем данные вносят в эту структуру.

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

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

Пример

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

Преимущества баз данных

Емкость хранения: Базы данных хранят большее количество данных по сравнению с другими хранилищами данных. Малогабаритные данные можно вписаться в электронные таблицы или документы. Однако, когда дело доходит до тяжелых данных, базы данных являются лучшим выбором.

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

Несколько пользователей: Разрешения могут быть предоставлены для множественного доступа к базе данных. Это позволяет одновременно нескольким (более одного) пользователям, получить доступ и манипулировать данными.

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

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

Импорт: Это еще один важный момент в использование баз данных. Он позволяет импортировать внешние объекты (данные из других баз данных). Импорт в основном делается для таблицы или запроса. При вводе, база данных создает копию импортируемого объекта.

Экспорт: В данном случае, таблицы или запросы импортируются другими базами данных.

Связи данных: Это делается для того, чтобы избежать создание копии объекта в базе. Ссылка определяется до требуемого объекта исходной базы данных.

Сортировки данных / Фильтрация: Фильтры могут быть применены к данным, которые имеют одинаковые значения данных. Примером одинаковых данных могут быть имена сотрудников организации с аналогичными фамилиями или именами. Аналогичным образом данные могут быть отсортированы как по возрастанию, так и по убыванию. Это помогает в просмотре или распечатки результатов в требуемом порядке.

Индексация базы данных: Большинство баз данных содержат индекс для хранимых данных, что в конечном итоге повышает время доступа. Тот факт, что линейный поиск данных занимает много времени, делает эту особенность наиболее популярной.

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

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

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


Базы данных

12.1. Понятие о базах данных

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

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

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

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

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

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

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

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

12.2. Типы баз данных

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

Иерархическая БД

В иерархической БД существует упорядоченность элементов в записи, один элемент считается главным, остальные – подчиненными. Данные в записи упорядочены в определенную последовательность, как ступеньки лестницы, и поиск данных может осуществляться лишь последовательным «спуском» со ступеньки на ступеньку. Поиск какого-либо элемента данных в такой системе может оказаться довольно трудоемким из-за необходимости последовательно проходить несколько предшествующих иерархических уровней. Иерархическую БД образует каталог файлов, хранимых на диске; дерево каталогов, доступное для просмотра в Norton Commander, – наглядная демонстрация структуры такой БД и поиска в ней нужного элемента (при работе в операционной системе MS-DOS). Такой же базой данных является родовое генеалогическое дерево.



Рисунок 12.1. Иерархическая модель базы данных

Сетевая БД

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


Рисунок 12.2. Сетевая модель базы данных

Реляционная БД

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


Рисунок 12.3. Реляционная модель базы данных


Совокупность БД и программы СУБД образует информационно-поисковую систему, называемую банком данных.

1. По технологии обработки данных базы данных делятся на централизованные и распределенные. Централизованная база данных хранится в памяти одной вычислительной системы. Если эта вычислительная Система является компонентом сети ЭВМ, возможен распределенный доступ к такой базе. Этот способ использования баз данных часто применяют в локальных сетях ПК. Распределенная база данных состоит из нескольких, возможно, пересекающихся или даже дублирующих друг друга частей, хранимых в различных ЭВМ вычислительной сети. Работа с такой базой осуществляется с помощью системы управления распределенной базой данных (СУРБД).

2. По способу доступа к данным базы данных делятся на базы данных с локальным доступом и базы данных с удаленным (сетевым доступом). Системы централизованных баз данных с сетевым доступом предполагают различные архитектуры таких систем: файл-сервер; клиент-сервер.

Файл-сервер

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

Клиент-сервер

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

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

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

Различают 2 класса СУБД:

1) системы общего назначения;

2) специализированные системы.

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

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

Современные СУБД имеют следующие возможности:

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

2) позволяют вставлять, удалять, обновлять и извлекать информацию из базы данных посредством языка запросов (SQL);

3) большинство СУБД могут работать на компьютерах с разной архитектурой и под разными операционными системами;

4) многопользовательские СУБД имеют развитые средства администрирования баз данных.

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

Для работы с базой данных СУБД должна обеспечивать:

Возможность внесения и чтения информации;

Работу с большим объемом данных;

Быстроту поиска данных;

Целостность данных (их непротиворечивость);

Защиту от разрушения, уничтожения (не только при случайных ошибках пользователя), от несанкционированного доступа;

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

СУБД могут использоваться как в однопользовательском, так и в многопользовательском режиме.

На рынке программного обеспечения можно выделить такие наиболее востребованные СУБД, как Microsoft Access, Microsoft Visual FoxPro, Borland dBase, Borland Paradox, Oracle, MySQL.

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

Введение

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

К областям применения Microsoft Access можно отнести следующие:

В малом бизнесе (бухгалтерский учет, ввод заказов, ведение информации о клиентах, ведение информации о деловых контактах);

В работе по контракту (разработка внутриотраслевых приложений, разработка межотраслевых приложений);

В крупных корпорациях (приложения для рабочих групп, системы обработки информации);

В качестве персональной СУБД (справочник по адресам, ведение инвестиционного портфеля, поваренная книга, каталоги книг, пластинок, видеофильмов и т. п.).

Рассмотрим основные определения, связанные с разработкой баз данных.

База данных (БД, data base, DB) – совокупность взаимосвязанных данных, используемых под управлением СУБД.

В самом общем смысле база данных – это набор записей и файлов, организованных специальным образом.

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

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

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

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

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

12.5. Архитектура Microsoft Access

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

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

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

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

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

5. Макрос. Объект, представляющий собой структурированное описание одного или нескольких действий, которые должен выполнить Access в ответ на определенное событие.

6. Модуль. Объект, содержащий программы, написанные на языке Visual Basic для приложений.

Событие – любое изменение состояния объекта Microsoft Access. Например, событием является открытие формы, закрытие формы, ввод новой строки в форму, изменение содержимого текущей записи или элемента управления (объекта формы или отчета, который может содержать данные). Для обработки события вы можете создать макрос или процедуру Visual Basic для приложений.

12.6. Создание базы данных

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

Для создания пустой базы данных выберите команду Файл->Создать (кнопка

), а затем в окне диалога Создание щелкните дважды по значку Новая база данных. После этого откроется окно диалога Файл новой базы данных. В раскрывающемся списке Папка выберите нужный диск и папку, например, диск С:, папка Мои документы. После этого в поле Имя файла введите имя новой базы данных. Access автоматически добавит к имени файла расширение. MDB. Теперь остается только нажать на кнопку Создать и на экране появится окно базы данных, представленное на рис. 12.1.


Рисунок 12.4. Главное окно базы данных

Создание новой пустой таблицы

В Microsoft Access существуют четыре способа создания пустой таблицы:

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

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

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

4. В режиме конструктора можно непосредственно указать параметры всех элементов структуры таблицы.

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

Для примера определим таблицу твузы для базы данных «Профконсультант средней школы». Перейдите на вкладку Таблицы и нажмите кнопку Создать. В окне диалога Новая таблица выберите Конструктор и нажмите кнопку Ok. Access выведет окно пустой таблицы в режиме конструктора. На рис. 12.2 показана таблица твузы в режиме таблицы с уже определенными полями.


Рисунок 12.5. Окно таблицы базы данных в режиме Таблицы


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

Типы данных

Текстовый формат

Размер текстового поля может находиться в пределах от 1 до 255 символов.


Числовой формат

Тип числового поля может принимать значения из следующего списка:

байт – целые числа в пределах от 0 до 255;

целое – целые числа от –32768 до 32767;

длинное целое – целые числа от – 2147483648 до 2147483647;

с плавающей точкой (4 байта) – числа в пределах от –3,402823ЕЗ8 до 3,402823ЕЗ8;

с плавающей точкой (8 байт) – числа в пределах от 1,79769313486232ЕЗ08 до 1,79769313486232ЕЗ08;


Формат «Дата/Время»

Для типа данных Дата/Время существует набор форматов поля, приведенный ниже вместе с примерами:


Денежный формат

По умолчанию денежный формат представляет собой числа, записанные с двумя знаками после запятой, с разделением групп разрядов и обозначением «р.» в конце. Пользователь может записать в строке Формат поля шаблон для своего формата. Допустим, необходимо вводить суммы в долларах. Тогда надо установить курсор на слово Денежный и заменить его шаблоном формата, например таким: # ###$.


Формат «счетчик»

Поля типа «счетчик» выполняют определенную функцию – автоматическую идентификацию записей таблицы. Поэтому свойств, которые можно было бы изменить, у такого поля немного. Во-первых, счетчик – это всегда число. Во-вторых, наращивание его значения происходит автоматически. Access предлагает два варианта изменения счетчика: последовательный и случайный. Первый вариант удобен тем, что позволяет нумеровать записи. Второй вариант можно использовать, если надо создать систему кодирования записей в таблице, защищенную от неосторожных действий оператора.


Логический формат

Ячейка в поле логического типа может содержать только одно из двух значений: Да или Нет. Access предлагает еще два варианта названий логического типа: Истина/Ложь и Включено/Выключено. Вне зависимости от того, какой формат поля вы изберете, в таблице логическое поле будет представлено в виде набора флажков. Когда вы щелкаете флажок мышью, это приводит к тому, что в квадрате появляется изображение галочки, что соответствует логическому значению Да

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


Поле объекта OLE

Поле объекта OLE (Object Linking and Embedding) – последний выбираемый из списка тип поля. Он имеет всего два свойства: подпись и параметр «обязательное поле». Поля данного типа не хранят информацию как таковую, а содержат ссылки на объекты, которые могут быть включены в БД с использованием OLE-протокола обмена данными. Такими объектами могут быть, например, графические файлы.

Для того чтобы внедрить в ячейку поля OLE-объект, надо установить на нее курсор и, нажав правую кнопку мыши, вызвать контекстное меню. В нем выберите команду Вставить объект. Программа раскроет окно диалога для выбора типа объекта. Объект в данном случае отождествляется с приложением, в котором он может быть создан или отредактирован.

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


Текст или комбинация текста и чисел, используемая как адрес гиперссылки.

Адрес – это текст, задающий путь и имя файла для открываемого документа. Путь может представлять собой путь к файлу, записанному на жестком диске, являться адресом в формате UNC или адресом URL в Интернете.

Для вставки адреса в поле можно использовать команду Гиперссылка в меню Вставка.

12.7. Многотабличные базы данных. Отношения между таблицами

Реляционные базы данных состоят из нескольких таблиц, связь между которыми устанавливается с помощью совпадающих полей. Каждая запись в таблицах идентифицирует один объект. Отношение между объектами определяет отношение между таблицами. Существует 4 типа отношений:

1. Отношение «один к одному» означает, что каждая запись в одной таблице соответствует только одной записи в другой таблице. Одному гражданину страны соответствует только один номер паспорта, в то же время как один номер паспорта соответствует только одному человеку.

2. Отношение «один ко многим» означает, что каждой записи в одной таблице соответствует одна или несколько записей в другой таблице. Один абитуриент может поступать во многие вузы и в тоже время в один вуз может поступать много абитуриентов.

3. Отношение «многие ко многим» возникает между двумя таблицами в тех случаях, когда:

Одна запись из первой таблицы может быть связана более чем с одной записью из второй таблицы;

Одна запись из второй таблицы может быть связана более чем с одной записью из первой таблицы.

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

В большинстве случаев любые две таблицы связаны отношением «один – ко многим».

Создание связей между таблицами

Для того чтобы рассмотреть создание связей между таблицами построим в базе данных «Профконсультант» еще две таблицы:

1. Таблица тАбитуриенты:


КодАб является ключевым полем.


2. Таблица пересечения тСвязьАбВУЗ:


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


Рисунок 12.6. Схема данных


Чтобы определить связи, необходимо использовать команду Сервис->Схема данных (кнопка

). Если связь определяется впервые в базе данных, то Access откроет пустое окно Схема данных, а затем выведет на экран окно диалога Добавление таблицы. В этом окне необходимо выделить нужные таблицы и нажать кнопку Добавить. В нашем случае в окно схемы данных надо добавить все три таблицы. Кнопка Закрыть закрывает окно диалога Добавление таблицы (данное окно можно вызвать по нажатию кнопки

). После этого окно Схемы данных должно выглядеть примерно так, как показано на рис. 3 (кроме линий соединения). Чтобы установить связь между таблицами твузы и тСвязьАбвуз, надо выделить поле Кодвуза в таблице твузы (щелкнуть левой кнопкой «мыши»), перетащить и опустить его на поле Кодвуза в таблице тСвязьАбвуз. Аналогично устанавливается связь между двумя другими таблицами.

Когда вы отпустите кнопку мыши, Microsoft Access откроет окно диалога Связи, представленное на рис. 12.7.


Рисунок 12.7. Настройка связей между полями таблиц


После установки флажка Обеспечение целостности данных, Access делает доступными еще два флажка: Каскадное обновление связанных полей и Каскадное удаление связанных записей. При установленном флажке Каскадное обновление связанных полей Microsoft Access обновляет все значения чужих ключей в дочерних таблицах (то есть в таблицах на стороне отношения «многие» при связи «один ко многим») при изменении значения первичного ключа в родительской таблице, которая находится на стороне отношения «один» при связи «один ко многим». Если же вы установите флажок Каскадное удаление связанных записей, Microsoft Access удалит дочерние строки (связанные строки в дочерних таблицах) при удалении родительской строки (связанная строка в родительской таблице). Установите флажок Каскадное обновление связанных полей, чтобы при изменении кода вуза Access автоматически обновлял записи в таблице тСвязьАбвуз.

После нажатия кнопки Создать Access создаст связь и нарисует линию между двумя таблицами, указывающую на наличие связи между ними. Заметьте: когда вы просите обеспечить целостность данных, Access изображает на конце линии у таблицы, находящейся на стороне отношения «один», цифру 1, а на другом конце у таблицы со стороны отношения «многие» – символ бесконечности. Чтобы удалить связь, щелкните по ее линии и нажмите клавишу Del. Если вы хотите отредактировать или изменить существующую связь, дважды щелкните по соответствующей линии, чтобы снова открыть окно диалога Связи.

12.8. Работа с данными при помощи запросов

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

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

Выбор данных из одной таблицы

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

На рис. 12.8 показан запрос в режиме конструктора. Окно конструктора запросов разделено на две части. В верхней находятся списки полей таблиц или запросов, на основе которых создается новый запрос. В нижней располагается бланк QBE (Query By Example – запрос по образцу), в котором выполняется вся работа по созданию запроса. Каждый столбец бланка представляет одно поле, используемое в запросе. Поле может просто принадлежать одной из таблиц, быть вычисляемым (иными словами, его значение рассчитывается на основе одного или нескольких полей таблицы) или итоговым, то есть использующим одну из встроенных функций Microsoft Access.



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

Если была выполнена команда Вид->Имена таблиц, во второй строке бланка запроса Access выведет имя таблицы, из которой выбрано поле. В третьей строке бланка можно задать сортировку по возрастанию или по убыванию.

Флажки в строке бланка Вывод на экран отвечают за вывод полей в наборе записей. По умолчанию выводятся все поля, включенные в бланк Запроса.

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

Включение полей в запрос

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

Вычисляемые поля

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

Вычисляемое поле может содержать вызовы встроенных функций Access и следующие операторы:

"+" – складывает два арифметических выражения;

"– " – вычитает из первого арифметического выражения второе;

"*" – перемножает два арифметических выражения;

"/" – делит первое арифметическое выражение на второе;

"\" – округляет два арифметических выражения до целых значений и делит первое на второе, результат округляется до целого;

"^" – возводит первое арифметическое выражение в степень, задаваемую вторым арифметическим выражением;

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

«&» – создает текстовую строку как результат присоединения второй строки к концу первой. Если один из операндов является числом, то оно автоматически преобразуется в строку символов.

На рис. 12.9 показан пример вычисляемого поля для таблицы тАттестат. Вычисляемое поле Среднее выводит средний балл по трем предметам: Русский, Математика, Физика.


Рисунок 12.9. Вычисляемое поле

Итоговые запросы

Для вычисления итоговых значений надо нажать кнопку Групповые операции

чтобы в бланке QBE появилась строка Групповые операции.

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


Итоговые функции Access:

Sum – вычисляет сумму всех значений заданного поля в каждой группе.

Avg – вычисляет среднее арифметическое всех значений данного поля в каждой группе.

Min – возвращает наименьшее значение, найденное в этом поле внутри каждой группы.

Max – возвращает наибольшее значение, найденное в этом поле внутри каждой группы.

Count – возвращает число записей, в которых значения данного поля отличны от Null.

StDev – стандартное отклонение всех значений данного поля в каждой группе.

Var – вычисляет дисперсию значений данного поля в каждой группе.

First – возвращает первое значение этого поля в группе.

Last – возвращает последнее значение этого поля в группе.

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


Рисунок 12.10. Окно запроса с применением групповой операции

Перекрестные запросы

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

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

на панели инструментов. В окне диалога Новый запрос выберите Конструктор, а затем в окне конструктора выберите команду Запрос->Перекрестный. Access добавит в бланк запроса строку Перекрестная таблица. В этой строке для каждого поля перекрестного Запроса может быть выбрана одна из четырех установок: Заголовки строк, Заголовки столбцов, Значение (выводимое в ячейках перекрестной таблицы) и Не отображается. Для перекрестного запроса надо определить, по крайней мере, одно поле в качестве заголовков строк, одно для заголовков столбцов и одно поле значений. Каждое поле, являющееся заголовком столбцов, должно иметь в строке Групповая операция установку Группировка. Для поля, использующегося в качестве заголовков строк, в строке Групповая операция должна быть установлена операция Группировка, выбрана одна из итоговых функций (Count, Min, и т. д.) или введено выражение, содержащее итоговую функцию. Для поля с установкой Значение выбирается одна из итоговых функций или вводится выражение, использующее итоговую функцию.

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




Рисунок 12.11. Результаты перекрестного запроса

12.9. Построение и применение форм

Формы являются основным средством организации интерфейса пользователя в приложениях Microsoft Access.

Обзор форм

Рассмотрим основные виды форм, которые можно построить в Access.

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

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

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

Подчиненные формы. Подчиненные формы используются для представления данных, находящихся на стороне «многие» отношения «один – ко многим». Например, форма фАбитуриент показывает одного студента и несколько вузов, в которые студент поступает (рис. 12.12).


Рисунок 12.12. Окно Формы в обычном режиме

Конструктор форм

Чтобы начать создание формы, необходимо в окне базы данных выбрать таблицу или запрос, выполнить команду Вставка->Форма или выбрать Новая форма

в раскрывающемся списке кнопки Новый объект

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

Выберите Конструктор в этом окне диалога и нажмите кнопку Ok. Access откроет окно формы в режиме конструктора и выведет на экран несколько инструментов конструктора форм (рис. 12.13). В нашем примере окно формы находится на заднем плане, панель элементов располагается третьей в панели инструментов, список полей – в верхней части окна, окно свойств формы – в правом нижнем углу. В новой форме будет присутствовать только область данных (с серой сеткой). Для добавления в форму областей заголовка и примечания используется команда Вид-> Заголовок/примечание формы, для добавления колонтитулов – Вид-> Колонтитулы. Увеличить или уменьшить размер любой области можно, если установить указатель мыши на краю этой области и перетащить его. Удаление сетки выполняется командой Вид-> Сетка.


Рисунок 12.13. Создание формы в режиме Конструктор

Панель элементов

Панель элементов – это своеобразный «командный центр» создания формы. Её можно переместить, перетащив заголовок окна в нужное место на экране, или изменить её форму, перетащив края или углы панели (см. рис. 12.10).

Чтобы в режиме конструктора форм вывести на экран панель элементов, нужно выбрать команду Вид->Панель элементов или нажать кнопку Панель элементов

на панели инструментов.

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

Ниже перечислены кнопки панели элементов.

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


– кнопка Мастера элементов. Если кнопка нажата, то при создании группы, поля со списком, списка или командной кнопки активизируется мастер по созданию этих элементов управления.


– кнопка Надпись используется для создания элемента управления Надпись, содержащего постоянный текст.


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


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

Выключатель,

Переключатель

и Флажок используются для создания элементов управления, принимающих значение Вкл/Выкл, Истина/Ложь или Да/Нет. Состоянию Вкл, Истина или Да соответствует число –1, а состоянию Выкл, Ложь или Нет соответствует 0. При выборе одного из Выключателей, Переключателей или Флажков (т. е. переводе его во включенное состояние) любой ранее нажатый элемент группы будет переведен в выключенное состояние.


– кнопка Поле со списком используется для создания элемента управления Поле со списком, который можно рассматривать как объединение двух элементов: поле и список. Для явного задания списка надо ввести список значений в строке свойства Источник записей. В качестве источника значений списка можно также использовать таблицу или запрос. Значение, выбранное в списке, отображается в поле.


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


– кнопка элемента Кнопка используется для создания элемента управления Командная кнопка, с помощью которой можно запустить макрос или процедуру VBA.


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


– кнопка Рисунок позволяет поместить в форму статический рисунок. Его нельзя будет редактировать в форме. (Свойство формы Рисунок позволяет использовать некоторое изображение в качестве подложки (фона) формы.)


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


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


– кнопка Конец страницы позволяет вставлять разрыв страницы в многостраничной форме.


– кнопка Подчиненная форма/отчет используется для включения в текущую форму некоторой другой формы.


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


– кнопка Прямоугольник используется для включения в форму прямоугольников и улучшения ее внешнего вида.

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

на панели инструментов или командой Вид – Свойства. Поскольку форма имеет более 70 свойств, а большинство элементов управления – более 30, то окно свойств содержит несколько вкладок.

12.10. Основные сведения об отчетах

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

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

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

Создание отчета

В окне диалога Новый отчет можно выбрать один из шести вариантов.

Конструктор. Используется для создания отчета «с нуля» или для редактирования ранее созданного отчета.

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

Автоотчет: в столбец. Этот мастер создает отчет, в котором каждая запись базового запроса или таблицы представлена в виде простого списка, содержащего названия и значение полей.

Автоотчет: ленточный. В отчете этого типа записи базового запроса или таблицы выводятся в одной строке.

Диаграмма. Этот мастер помогает построить диаграмму и создает в отчете свободную рамку объекта OLE с внедренной диаграммой Microsoft Graph.

Почтовая наклейка. Этот мастер позволяет выбрать поля с именами и адресами, отформатировать их и создать отчет для печати почтовых наклеек.

Разработка отчета в режиме конструктора

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

Верхний и нижний колонтитулы будут печататься соответственно вверху и внизу каждой страницы отчета. Добавить или удалить верхний и нижний колонтитулы можно с помощью команды Вид->Колонтитулы. Можно задать заголовок отчета, который будет печататься только в самом начале отчета, и примечание отчета, печатающееся в конце отчета. Чтобы добавить в отчет эти разделы, выберите Формат-> Заголовок/примечание отчета.

Упражнения для самостоятельной работы

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

Определим логическую структуру создаваемой базы данных. Поскольку почти все поля базы данных являются уникальными, создаем одну сводную таблицу, состоящую из записей, в которые входят поля Фамилия, Имя, Группа, Дата рождения и Домашний адрес.

1. Загрузите Microsoft Access.

2. В появившемся окне Microsoft Access выберите переключатель Новая база данных. Нажмите кнопку <ОК>.

3. В ниспадающем списке Папка окна Файл новой базы данных установите свой сетевой диск и свой каталог. В наборном поле Имя файла введите имя создаваемой базы данных Student. Нажмите кнопку Создать.

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

Создание структуры новой таблицы

5. В появившемся окне Student: База данных выберите объект Таблицы и нажмите кнопку Создать.

6. В появившемся окне Новая таблица выберите режим работы Конструктор. Нажмите кнопку <ОК>.

7. В первой строке в столбце Имя поля введите: Фамилия. Нажмите клавишу вправо – >.

8. Щелкните на появившейся стрелке раскрывающегося списка ячейки Тип данных и выберите пункт Текстовый.

9. В нижней части экрана, в Свойствах поля, на вкладке Общие в строке Размер поля установите 20.

10. В строке Обязательное поле при помощи кнопки раскрывающегося меню укажите Да.

11. Установите курсор в первой строке в столбце Описание. Введите: Фамилия студента.

12. Во второй строке в столбце Имя поля введите: Имя. Установите тип данных – текстовый.

13. В поле Описание введите: Имя студента. Установите Размер поля – 10.

14. В третьей строке в столбце Имя поля введите: Группа. Установите тип данных – числовой.

15. В раскрывающемся списке Размер поля выберите Целое.

16. В поле Описание введите: Номер группы.

17. В четвертой строке в столбце Имя поля введите: Дата рождения.

18. Установите тип данных Дата/время. Установить курсор в наборном поле Формат поля.

19. В раскрывающемся списке Формат поля установите – Краткий формат даты.

20. Установите курсор в поле Маска ввода, находящееся в нижней части экрана, и щелкните мышью на кнопке с тремя точками. На запрос подтвердите сохранение таблицы под именем Таблица 1 и создание ключевого поля.

21. В появившемся диалоговом окне Создание масок ввода выберите Краткий формат даты. Нажмите кнопку Далее.

22. В следующем окне можно выбрать знак заполнителя для отображения в поле. Нажмите кнопку Готово.

23. Обратите внимание, что в первой строке Microsoft Access автоматически добавил дополнительное ключевое поле Код, которое играет роль уникального идентификатора записей, и установил для него Тип данных Счетчик.

24. В шестой строке в столбце Имя поля введите Домашний адрес.

25. Установите тип данных Поле MEMO. В поле Описание введите Домашний адрес.

26. Закройте текущее окно Таблица 1: таблица с сохранением изменений.

Заполнение таблицы

27. В окне Student: База данных выберите объект Таблицы, установите курсор на названии Таблица 1 и нажмите кнопку Открыть.

28. В поле Фамилия введите свою фамилию, в поле Имя введите свое имя и в поле Группа введите номер своей группы.

29. Переместите курсор в поле Дата рождения и введите дату своего рождения в формате ДД.ММ.ГГ, например 12.05.79. Примечание: вводить следует только числа, а остальное Microsoft Access подставит автоматически по заданной маске.

30. Переместите курсор в поле Домашний адрес и введите свой домашний адрес.

31. Подобным образом введите еще 7 записей. В поле Группа в любых двух строках введите № группы – 271 группу, в остальных– 272. Если потребуется изменить ширину столбца, то это можно сделать при помощи мыши аналогично работе в Excel.

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

33. Нажмите на значок закрытия текущего окна Таблица 1: таблица.

34. В окне Student: База данных установите курсор мыши на слове Таблица 1 и правой кнопкой мыши вызовите контекстное меню.

35. Выберите команду Предварительный просмотр. Если потребуется, измените масштаб для более удобного просмотра созданной таблицы с помощью пиктограммы с лупой или ниспадающего списка масштабов. Закройте окно просмотра.

36. В окне Student: База данных снова установите курсор на слове Таблица 1 и вызовите контекстное меню.

37. Выберите команду Переименовать. Введите новое имя таблицы Т Студенты.

Создание запросов

38. В окне Student: База данных выберите объект Запросы. Нажмите кнопку Создать.

39. В появившемся окне Новый запрос выберите Конструктор. Нажмите кнопку <ОК>.

40. В окне Добавление таблицы выберите объект Таблицы Т Студенты. Нажмите кнопки Добавить и Закрыть.

41. Перед Вами окажется окно Конструктора запросов с заголовком Запрос 1: запрос на выборку. В его верхней части отображаются списки полей таблицы, к которым обращается запрос. Нижняя область содержит бланк выбора полей таблиц, условий отбора и режимов сортировки. Указывается также название таблицы, которой принадлежит выбранное поле.

42. Поочередно щелкните два раза левой кнопкой мыши на следующих полях: Код, Фамилия, Имя, Группа, Дата рождения, Домашний адрес.

43. Установите курсор в нижней части окна в столбце Фамилия в поле Сортировка. В раскрывающемся списке этого поля установите По возрастанию.

44. Нажмите на значок закрытия текущего окна Запрос 1: запрос на выборку. Подтвердите сохранение структуры запроса.

45. В наборном поле Имя запроса в окне Сохранение введите имя запроса Список всех студентов. Нажмите кнопку <ОК>.

46. Откройте и просмотрите запрос Список всех студентов. Обратите внимание, что в записях фамилии расположены в алфавитном порядке. Закройте запрос.

47. Установите курсор на запрос Список всех студентов.

48. Нажмите клавишу и, ухватившись за значок запроса, переместите курсор мыши в сторону. Отпустите кнопку. Возникнет новый ярлык Копия Список всех студентов.

49. Установите курсор на новый ярлык и переименуйте его в Список студентов 271 группы.

50. Откройте запрос Список студентов 271 группы.

51. В меню Вид выберите режим работы Конструктор.

52. В столбце Группа в строке Условие отбора введите 271.

53. Нажмите на значок закрытия текущего окна, подтвердите сохранение макета Список студентов 271 группы: запрос на выборку.

54. Откройте запрос Список студентов 271 группы. Просмотрите содержимое запроса. Закройте текущее окно.

55. В исходной таблице в одной из записей измените номер группы на номер 271. Закройте таблицу.

56. Вновь откройте запрос Список студентов 271 группы. Убедитесь, что содержание запроса изменилось.

Создание формы при помощи Мастера форм

57. В окне Student: База данных выберите объект Формы, нажмите кнопку Создать.

58. В окне Новая форма выберите Мастер форм, а в качестве источника данных с помощью кнопки раскрывающегося списка выберите таблицу ТСтуденты. Нажмите кнопку <ОК>.

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

60. В первом окне Мастера форм, в списке Таблицы и запросы указана выбранная таблица Т Студенты.

61. Щелкните на кнопке», чтобы добавить в список Выбранные поля: все поля таблицы.

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

64. В следующем окне диалога выберите для формы стиль В один столбец и щелкните на кнопке Далее.

65. В списке третьего окна выберите понравившийся Вам стиль оформления и снова щелкните на кнопке Далее.

66. В последнем окне Мастера щелкните на кнопке Готово, не изменяя никаких параметров. Мастер сгенерирует форму и откроет ее в режиме просмотра данных.

67. Окно формы содержит названия полей и области отображения данных исходной таблицы. В нижней части формы расположены кнопки перемещения по записям.

68. Щелкните несколько раз на кнопке Следующая запись, чтобы добраться до пустой строки, и введите запись еще об одном человеке.

Создание формы при помощи Конструктора

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

69. Выберите вкладку Формы. Установите режим Конструктор форм (команда меню Вид – Конструктор).

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

70. Одним щелчком выделите подпись Фамилия, установите курсор внутри объекта и измените подпись на Фамилия студента.

71. Щелкните на объекте Фамилия студента правой кнопкой мыши, в контекстном меню выберите команду Свойства, откроется окно свойств Надпись: Фамилия надпись. Во вкладке Макет установите цвет фона – голубой, размер шрифта – 12, оформление – приподнятое и другие свойства по своему желанию. Если текст не будет помещаться в рамку, при помощи маркеров измените границы объекта.

72. Измените внешний вид других объектов формы.

Создание элементов управления

При открытии конструктора на экране появляется Панель элементов. Если ее нет, щелкните на кнопке Панель элементов

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

73. Поместите указатель мыши на угол области формы.

74. Перетащите этот угол вправо вниз, чтобы увеличить форму.

75. С помощью команды Правка – Выделить все выделите все элементы формы.

76. Нажмите клавишу Ctrl и, не отпуская ее, нажатием клавиш со стрелками переместите элементы формы вниз и вправо, так чтобы они были отцентрированы относительно новых границ формы.

77. Щелкните на кнопке

Надпись панели элементов.

78. Растяните рамку надписи в верхней части формы на ширину области данных.

79. Введите надпись, которая будет являться заголовком формы: Список студентов.

80. Находясь в области заголовка, вызовите контекстное меню и выберите команду Свойства.

81. Во вкладке Макет установите следующие параметры: ширина границы – 3 пункта, цвет фона – розовый, размер шрифта – 14, курсив– Да, от левого края – 3 см.

82. Щелкните на кнопке Рисунок

Панели элементов.

83. Внизу формы растяните рамку рисунка.

84. В открывшемся окне выбора файла найдите папку с рисунками Windows, выберите любой понравившийся Вам рисунок и щелкните на кнопке <ОК>. По умолчанию рисунки вставляются в форме урезания рисунка рамкой элемента.

85. Чтобы изменить режим размещения, щелкните на рисунке правой кнопкой мыши и в контекстном меню выберите команду Свойства.

86. В списке Установка размеров открывшегося окна параметров выберите пункт Вписать в рамку.

87. Закройте окно параметров.

88. Щелкните на кнопке Кнопка

Панели элементов.

89. Перенесите указатель мыши в область формы и щелкните левой кнопкой мыши внизу формы.

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

91. Во втором окне Мастера создания кнопок выберите рисунок на кнопку, например, Стрелка вправо (синяя). Нажмите кнопку Далее.

92. В третьем окне Мастера создания кнопок выберите название кнопки – Следующая запись. Нажмите кнопку Готово.

93. Используя пункты 88–92, создайте кнопки Предыдущая запись, Найти запись, Выход из формы.

94. Установите режим работы с формой (команда меню Вид – Режим формы).

95. Проверьте действие кнопок.

Создание отчетов

96. В окне Student: База данных выберите объект Отчеты и нажмите кнопку Создать.

97. В окне Новый отчет выберите режим Конструктор, а в качестве источника данных выберите таблицу ТСтуденты. Нажмите кнопку <ОК>.

Окно конструктора отчетов состоит из трех областей: Верхний колонтитул, Нижний колонтитул и Область данных. Появляется также небольшое окно со списком полей источника записей (Таблицы Т Студенты). Если на экране отсутствует Панель элементов, выведите ее на экран, щелкнув на кнопке Панель элементов панели инструментов.

98. На панели элементов нажмите пиктограмму Надпись

99. Щелкните мышью в области Верхний колонтитул и введите надпись Список студентов -> .

100. В области надписи правой кнопкой мыши откройте контекстное меню и выберите команду Свойства.

101. В открывшемся окне параметров во вкладке Макет выберите размер шрифта -16. Закройте окно параметров.

102. В области надписи снова откройте контекстное меню, выберите команду Размер по размеру данных, Цвет текста – розовый.

103. Аналогично Верхнему колонтитулу оформите в Нижнем колонтитуле надпись Инженерно-физический факультет.

104. Щелкните мышью на пиктограмме Поле

в Панели элементов.

105. Затем щелкните мышью в первой строке первого столбца Области данных. Access создаст элемент управления типа поле (Свободный), а также Поле № для надписи.

106. Щелкните на элементе Поле № и удалите элемент клавишей .

107. На элементе Свободный откройте контекстное меню, выберите команду Свойства, на вкладке Данные в строке Данные наберите = 1.

108. В строке Сумма с накоплением при помощи кнопки выбора установите Для всего. Закройте окно свойств.

109. Поместите указатель мыши на пункт Фамилия окна Т Студенты, нажмите кнопку мыши и перетащите этот пункт в область формы. Access снова создаст элемент управления типа поле справа, а также поле для надписи – слева. Удалите поле для надписи.

110. Проделайте аналогичную операцию для пунктов Имя, Группа, Дата рождения.

111. Оформите новые элементы области данных разными шрифтами, фонами и т. д. по своему выбору.

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

113. Закройте текущее окно Конструктора. Дайте название отчету О Список студентов -> ОК.

114. В окне STUDENT: База данных выберите объект Отчеты, откройте отчет О Список студентов.

115. Если это потребуется, отредактируйте отчет «О Список студентов», используя режим Конструктор так, чтобы список студентов занимал минимальный размер и все данные были внесены в отчет полностью.

116. Закройте отчет. Закройте базу данных.

Организация связей между таблицами

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

1. Откройте базу данных «Student».

2. В режиме Конструктора создайте в базе данных новую таблицу, состоящую из двух столбцов: Название предмета (тип данных-текстовый, размер поля – 20) и Семестр (тип данных-числовой, размер поля – байт).

3. Закройте текущее окно, задав макету имя тПредметы и подтвердив создание ключевого поля. Access автоматически добавит к созданным Вами двум полям еще одно поле Код с типом данных Счетчик, определив это поле как ключевое.

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

5. Создайте еще одну таблицу в режиме Конструктора. Назовите ее Т.

Преподаватели

6. Создайте поля: Фамилия (тип данных – текстовый, размер поля – 20, описание – Фамилия преподавателя), Имя (тип данных текстовый, размер поля – 20), Отчество (тип данных – текстовый, размер поля – 20), Код предмета (тип данных – числовой, размер поля – длинное целое, описание – Предмет, который ведет преподаватель).

7. Нажмите на значок закрытия текущего окна тПреподаватели: таблица. Откажитесь от создания ключевого поля.

8. Откройте таблицу для заполнения.

9. Занесите в таблицу имена, отчества и фамилии 5 преподавателей, ведущих предметы, перечисленные в таблице тПредметы. Разные преподаватели могут вести один и тот же предмет. В столбце Код предмета проставьте цифры, соответствующие кодам предметов из таблицы Т_Предметы.

10. Нажмите на значок закрытия текущего окна тПреподаватели:

11. Нажмите на кнопку Схема данных

Панели инструментов.

12. В открывшемся окне Добавление таблицы во вкладке Таблицы установите курсор на тПредметы и нажмите кнопку Добавить

13. Установите курсор на тПреподаватели и снова нажмите кнопку Добавить. Закройте окно Добавление таблицы.

14. В окне Схема данных Вы видите две небольшие таблицы тПредметы и тПреподаватели. Для создания связи между этими Таблицами выполните следующие действия:

15. Поместите указатель мыши на пункт Код таблицы тПредметы.

16. Нажмите кнопку мыши и перетащите указатель на поле Код предмета таблицы тПреподаватели.

17. В открывшемся окне диалога установите флажок «Обеспечение целостности данных» и щелкните на кнопке Создать. Между двумя таблицами в окне Схема данных появится линия связи типа «один ко многим».

18. Закройте текущее окно, подтвердив сохранение.

Список подстановки

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

19. Откройте таблицу тПреподаватели в режиме Конструктора.

20. В столбце Тип данных для поля Код предмета выберите пункт Мастер подстановок.

21. В первом окне Мастера оставьте выбранным положение переключателя Объект «столбец подстановки» будет использовать значение из таблицы или запроса и щелкните на кнопке Далее.

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

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

25. Следующее окно Мастера продемонстрирует столбец таблицы-источника.

26. В поле последнего окна введите название Предмет, которое заменит имя столбца Код предмета, и щелкните на кнопке Готово.

27. В появившемся окне диалога щелчком на кнопке Да подтвердите необходимость сохранения построенной структуры.

28. Находясь в окне тПреподаватели: таблица, перейдите в режим таблицы (меню Вид – Режим таблицы).

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

30. Введите еще одну запись в таблицу тПреподаватели. При вводе данных в столбец Предмет используйте список Мастера подстановок.

31. Закройте текущее окно.

Выполните самостоятельно

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

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

3. Создать отчет на основе двух таблиц тПредметы и Т Преподаватели.

Урок " Основные понятия БД "

Любой из нас, начиная с раннего детства, многократно сталкивался с «базами данных». Это - всевозможные спра­вочники (например, телефонный), энциклопедии и т. п. За­писная книжка - это тоже «база данных», которая есть у каждого из нас.

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

Например, база данных «Записная книжка» хранит информацию о людях, каждый из которых имеет фамилию, имя, телефон и так далее. Библиотечный каталог хранит информацию о книгах, каждая из которых имеет название, автора, год издания и так далее.

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

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

Иерархические базы данных

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

Между объектами существуют связи, каждый объект может включать в себя несколько объектов более низкого уровня. Такие объекты находятся в отношении предка (объ­ект, более близкий к корню) к потомку (объект более низкого уровня), при этом объект-предок может не иметь потомков или иметь их несколько, тогда как объект-потомок обязательно имеет только одного предка. Объекты, имеющие общего предка, называются близнецами .

Например: иерархической базой данных является Каталог папок Windows , с которым можно работать, запустив Проводник. Верхний уровень занимает папка Рабочий стол. На втором уровне находятся папки Мой компьютер, Мои документы, Сетевое окружение и Корзина, которые являются потомками папки Рабочий стол, а между собой является близнецами. В свою очередь, папка Мой компьютер является предком по отношению к папкам третьего уровня - папкам дисков (Диск 3,5(А:), (С:), ( D :), (E :), (F :)) и системным папкам (Принтеры, Панель управления и др.)

Сетевые базы данных

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

Сетевой базой данных фактически является Всемирная пау mu н a глобальной компьютерной сети Интернет. Гиперссылки связывают между собой сотни миллионов документов в единую распределенную сетевую базу данных.

Табличные базы данных

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

Рассмотрим, например, базу данных: Телефонный справочник

Фамилия

Адрес

Телефон

Иванов В.В.

Серова, 5 12

4325345

Петров И.И.

Седова, 3-21

3454365

Сидоров С.С.

Мира, 33-17

3454354

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

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

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

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

Телефонный справочник

Имена полей

Фамилия

Адрес

Телефон

Запись

Иванов В.В.

Серова, 5 12

4325345

Запись

Петров И.И.

Седова, 3-21

3454365

Запись

Сидоров С.С.

Мира, 33-17

3454354

Ключевое

поле

Поле

Поле

Поле

Тип поля определяется типом данных, которые оно содер жит. Поля могут содержать данные следующих основных типов:

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

    текстовый - тексты, содержащие до 255 символов;

    числовой - числа;

    дата/время - дата или время;

    денежный - числа в денежном формате;

    логический - значения Истина (Да) или Ложь (Нет);

    поле объекта OLE - изображение или рисунок

Поле каждого типа имеет свой набор свойств. Наиболее в ажными свойствами полей являются:

    размер поля - определяет максимальную длину тексто вого или числового поля;

    формат поля - устанавливает формат данных;

    обязательное поле - указывает на то, что данное поле обязательно надо заполнить

Система управления базами данных Access (СУБД)

Назначение и основные функции

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

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

Системой управления базами данных является приложение Access , входящее в Microsoft Office .

Интерфейс программы Access

В Access используется стандартный для среды Windows & Office многооконный интерфейс, но в отличие от других приложений, не многодокументный. Единовременно может быть открыта только одна база данных , содержащая обязательное окно базы данных и окна для работы с объектами базы данных. В каждый момент времени одно из окон является активным и в нем курсором отмечается активный объект.

Окно базы данных - один из главных элементов интерфейса Access . Здесь систематизированы все объекты БД: таблицы, запросы, формы, отчеты, макросы и модули.

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

Объект ы в СУБД Access :

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

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

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

· Отчеты. Отчеты предназначены для печати данных, содержащихся в таблицах и запросах, в красиво оформленном виде.

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

· Модули. Модули также служат для автоматизации работы с БД. Модули еще называют процедурами обработки событий и пишутся на языке VBA .

Давайте на пару минут забудем о современных технологиях и вспомним, как обрабатывались и хранились данные лет двадцать назад. В те времена наиболее популярными типами компьютеров были мэйнфреймы семейства IBM-360/370 (многие из вас, наверное, еще застали их отечественные аналоги серии ЕС, производившиеся странами СЭВ) и мини-ЭВМ типа DEC PDP-11 (у которых также был отечественный аналог - СМ-4/СМ-1420). Как правило, при работе с такими компьютерами использовались неинтеллектуальные терминалы, управляемые все тем же мэйнфреймом или мини-ЭВМ (о такой экзотике, как устройства считывания перфокарт и перфолент, как средства предоставления пользовательского интерфейса, мы, пожалуй, вспоминать не будем).

Надо сказать, обработка данных с помощью мэйнфреймов и мини-ЭВМ имела свои преимущества, в определенной степени утраченные позже, в эпоху персональных компьютеров и настольных СУБД. К ним, в частности, относились:

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

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

Этот недостаток был одной из причин бурного роста индустрии персональных компьютеров - наряду с простотой в эксплуатации и невысокой стоимостью по сравнению с мэйнфреймами и мини-ЭВМ пользователей привлекали возможности персонализации рабочей среды, в особенности возможность выбора наиболее подходящего данному пользователю программного обеспечения. Именно в тот период и начался бурный рост популярности настольных СУБД, таких как dBase (РЕБУС) и, чуть позже, FoxBASE, Paradox, а также некоторых других, ныне благополучно забытых. Надо сказать, в то время происходили процессы заимствования и стандартизации удачных идей и подходов, что особенно заметно отразилось на судьбе такого продукта, как dBase, чей язык программирования и принципы организации данных были заимствованы многими другими производителями в своих продуктах. Впрочем, о dBase и совместимых с ним продуктах мы поговорим чуть позже.

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

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

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

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

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

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

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

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

Наиболее популярные настольные СУБД

На сегодняшний день известно более двух десятков форматов данных настольных СУБД, однако наиболее популярными, исходя из числа проданных копий, следует признать dBase, Paradox, FoxPro и Access. Из появившихся недавно СУБД следует также отметить Microsoft Data Engine - по существу серверную СУБД, представляющую собой «облегченную» версию Microsoft SQL Server, но предназначенную, тем не менее, для использования главным образом в настольных системах и небольших рабочих группах.

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

СУБД Производитель URL
Visual dBase dBase, Inc http://www.dbase2000.com
Paradox Corel http://www.corel.com
Microsoft Access 2000 Microsoft http://www.microsoft.com
Microsoft FoxPro Microsoft http://www.microsoft.com
Microsoft Visual FoxPro Microsoft http://www.microsoft.com
Microsoft Visual FoxPro Microsoft http://www.microsoft.com
Microsoft Data Engine Microsoft http://www.microsoft.com

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

dBase и Visual dBase

Первая промышленная версия СУБД dBase - dBase II (принадлежащая тогда компании Ashton-Tate, приобретенной позже компанией Borland) появилась в начале 80-х годов. Благодаря простоте в использовании, нетребовательности к ресурсам компьютера и, что не менее важно, грамотной маркетинговой политике компании-производителя этот продукт приобрел немалую популярность, а с выходом следующих его версий - dBase III и dBase III Plus (1986 г.), оснащенных весьма комфортной по тем временам средой разработки и средствами манипуляции данными, быстро занял лидирующие позиции среди настольных СУБД и средств создания использующих их приложений.

Хранение данных в dBase основано на принципе «одна таблица - один файл» (эти файлы обычно имеют расширение *.dbf). MEMO-поля и BLOB-поля (доступные в поздних версиях dBase) хранятся в отдельных файлах (обычно с расширением *.dbt). Индексы для таблиц также хранятся в отдельных файлах. При этом в ранних версиях этой СУБД требовалась специальная операция реиндексирования для приведения индексов в соответствие с текущим состоянием таблицы.

Формат данных dBase является открытым, что позволило ряду других производителей заимствовать его для создания dBase-подобных СУБД, частично совместимых с dBase по форматам данных. Например, весьма популярная некогда СУБД FoxBase (разработанная Fox Software, Inc. и ныне принадлежащая Microsoft) использовала формат данных dBase для таблиц, однако форматы для хранения MEMO-полей и индексов были своими собственными, несовместимыми с dBase. Очень популярное в начале 90-х годов (и кое-где применяемое до сих пор) средство разработки Clipper компании Nantucket Corp (приобретенной впоследствии компанией Computer Associates) манипулировало как с данными формата dBase III (включая индексные файлы и файлы для MEMO-полей), так и с индексными файлами собственного формата.

Помимо популярного формата данных dBase является родоначальником и некогда популярного семейства языков программирования, получившего называние xBase. Все языки этого семейства, использующиеся и в FoxBase, и в Clipper, и в некоторых более поздних средствах разработки, таких как канувший в Лету CA Visual Objects фирмы Computer Associates, содержат сходный набор команд для манипуляции данными и являются по существу интерпретируемыми языками. В роли интерпретатора команд xBase выступает обычно либо среда разработки приложения на этом языке, либо среда времени выполнения, которую можно поставлять вместе с приложением. Отметим, что для скрытия исходного текста xBase-приложения подобные СУБД обычно содержат утилиты для псевдокомпиляции кода, который затем поставляется вместе со средой времени выполнения. В случае Clipper среда времени выполнения содержится в самом исполняемом файле (и сам Clipper формально считается компилятором), но тем не менее этот язык по существу также является интерпретируемым.

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

Отметим, однако, что для работы с данными формата dBase (или иных dBase-подобных СУБД) совершенно необязательно пользоваться диалектами xBase. Доступ к этим данным возможен с помощью ODBC API (и соответствующих драйверов) и некоторых других механизмов доступа к данным (например, Borland Database Engine, некоторых библиотек других производителей типа СodeBase фирмы Sequenter), и это позволяет создавать приложения, использующие формат данных dBase, практически с помощью любого средства разработки, поддерживающего один из этих механизмов доступа к данным.

После покупки dBase компанией Borland этот продукт, получивший впоследствии название Visual dBase, приобрел набор дополнительных возможностей, характерных для средств разработки этой компании и для имевшейся у нее другой настольной СУБД - Paradox. Среди этих возможностей были специальные типы полей для графических данных, поддерживаемые индексы, хранение правил ссылочной целостности внутри самой базы данных, а также возможность манипулировать данными других форматов, в частности серверных СУБД, за счет использования BDE API и SQL Links.

В настоящее время Visual dBase принадлежит компании dBase, Inc. Его последняя версия - Visual dBase 7.5 имеет следующие возможности:

  • Средства манипуляции данными dBase и FoxPro всех версий.
  • Средства публикации данных в Internet и создания Web-клиентов.
  • Ядро доступа к данным Advantage Database Server фирмы Extended Systems и ODBC-драйвер для доступа к данным этой СУБД.
  • Средства публикации отчетов в Web.
  • Средства генерации исполняемых файлов и дистрибутивов.

В настоящее время к Visual dBase в качестве дополнения может быть приобретен компонент dConnections, позволяющий осуществить доступ к данным Oracle, Sybase, Informix, MS SQL Server, DB2, InterBase из Visual dBase 7.5 и приложений, созданных с его помощью.

Компания dBase, Inc объявила также о проекте dBASE Open Source, целью которого является разработка сообществом пользователей dBase новых компонентов и классов с целью включения их в последующую версию dBase (получившую название dBase 2000). Иными словами, имеется тенденция превращения dBase (или его частей) в некоммерческий продукт с доступными исходными текстами.

Paradox

Paradox был разработан компанией Ansa Software, и первая его версия увидела свет в 1985 году. Этот продукт был впоследствии приобретен компанией Borland. С июля 1996 года он принадлежит компании Corel и является составной частью Corel Office Professional.

В конце 80-х - начале 90-х годов Paradox, принадлежавший тогда компании Borland International, был весьма популярной СУБД, в том числе и в нашей стране, где он одно время занимал устойчивые позиции на рынке средств разработки настольных приложений с базами данных.

Принцип хранения данных в Paradox сходен с принципами хранения данных в dBase - каждая таблица хранится в своем файле (расширение *.db), MEMO- и BLOB-поля хранятся в отдельном файле (расширение *.md), как и индексы (расширение *.px).

Однако, в отличие от dBase, формат данных Paradox не является открытым, поэтому для доступа к данным этого формата требуются специальные библиотеки. Например, в приложениях, написанных на C или Pascal, использовалась некогда популярная библиотека Paradox Engine, ставшая основой Borland Database Engine. Эта библиотека используется ныне в приложениях, созданных с помощью средств разработки Borland (Delphi, C++Builder), в некоторых генераторах отчетов (например, Crystal Reports) и в самом Paradox. Существуют и ODBC-драйверы к базам данных, созданным различными версиями этой СУБД.

Отметим, однако, что отсутствие «открытости» формата данных имеет и свои достоинства. Так как в этой ситуации доступ к данным осуществляется только с помощью «знающих» этот формат библиотек, простое редактирование подобных данных по сравнению с данными открытых форматов типа dBase существенно затруднено. В этом случае возможны такие недоступные при использовании «открытых» форматов данных сервисы, как защита таблиц и отдельных полей паролем, хранение некоторых правил ссылочной целостности в самих таблицах - все эти сервисы предоставляются Paradox, начиная с первых версий этой СУБД.

По сравнению с аналогичными версиями dBase ранние версии Paradox обычно предоставляли разработчикам баз данных существенно более расширенные возможности, такие как использование деловой графики в DOS-приложениях, обновление данных в приложениях при многопользовательской работе, визуальные средства построения запросов, на основе интерфейса QBE - Query by Example (запрос по образцу), средства статистического анализа данных, а также средства визуального построения интерфейсов пользовательских приложений с автоматической генерацией кода на языке программирования PAL (Paradox Application Language).

Windows-версии СУБД Paradox, помимо перечисленных выше сервисов, позволяли также манипулировать данными других форматов, в частности dBase и данными, хранящимися в серверных СУБД. Такую возможность пользователи Paradox получили благодаря использованию библиотеки Borland Database Engine и драйверов SQL Links. Это позволило использовать Paradox в качестве универсального средства управления различными базами данных (существенно облегченная версия Paradox 7 под названием Database Desktop по-прежнему входит в состав Borland Delphi и Borland C++Builder именно с этой целью). Что же касается базового формата данных, используемого в этом продукте, то он обладает теми же недостатками, что и все форматы данных настольных СУБД, и поэтому при возможности его стараются заменить на серверную СУБД, даже сохранив сам Paradox как средство разработки приложений и манипуляции данными.

Текущая версия данной СУБД - Paradox 9, поставляется в двух вариантах - Paradox 9 Standalone Edition и Paradox 9 Developer’s Edition. Первый из них предназначен для использования в качестве настольной СУБД и входит в Corel Office Professional, второй - в качестве как настольной СУБД, так и средства разработки приложений и манипуляции данными в серверных СУБД. Обе версии содержат:

  • Средства манипуляции данными Paradox и dBase.
  • Средства создания форм, отчетов и приложений.
  • Средства визуального построения запросов.
  • Средства публикации данных и отчетов в Internet и создания Web-клиентов.
  • Corel Web-сервер.
  • ODBC-драйвер для доступа к данным формата Paradox из Windows-приложений.
  • Средства для доступа к данным формата Paradox из Java-приложений.

Помимо этого Paradox 9 Developer’s Edition содержит:

  • Run-time-версию Paradox для поставки вместе с приложениями.
  • Средства создания дистрибутивов.
  • Драйверы SQL Links для доступа к данным серверных СУБД.

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

Microsoft FoxPro и Visual FoxPro

FoxPro ведет свое происхождение от настольной СУБД FoxBase фирмы Fox Software. Разрабатывая FoxBase в конце 80-х годов, эта компания преследовала цель создать СУБД, функционально совместимую с dBase с точки зрения организации файлов и языка программирования, но существенно превышающую ее по производительности. Одним из способов повышения производительности являлась более эффективная организация индексных файлов, нежели в dBase, - по формату индексных файлов эти две СУБД несовместимы между собой.

По сравнению с аналогичными версиями dBase, FoxBase и более поздняя версия этого продукта, получившая название FoxPro, предоставляли своим пользователям несколько более широкие возможности, такие как использование деловой графики, генерация кода приложений, автоматическая генерация документации к приложениям и т.д.

Впоследствии этот продукт был приобретен компанией Microsoft. Его последние версии (начиная с версии 3.0, выпущенной в 1995 году) получили название Visual FoxPro. С каждой новой версией этот продукт оказывался все более и более интегрирован с другими продуктами Microsoft, в частности с Microsoft SQL Server, - в состав Visual FoxPro в течение нескольких последних лет входят средства переноса данных FoxPro в SQL Server и средства доступа к данным этого сервера из Visual FoxPro и созданных с его помощью приложений. Хотя формат данных FoxPro также модифицировался с каждой новой версией, приобретая такие возможности, как хранение правил ссылочной целостности и некоторых бизнес-правил в самой базе данных, миграции приложений Visual FoxPro на серверные платформы уделялось значительно большее внимание.

Последняя версия этого продукта - Visual FoxPro 6.0, доступна и отдельно, и как составная часть Microsoft Visual Studio 6.0. Отличительной особенностью этой настольной СУБД от двух рассмотренных выше является интеграция этого продукта с технологиями Microsoft, в частности поддержка COM (Component Object Model - компонентная объектная модель, являющаяся основой функционирования 32-разрядных версий Windows и организации распределенных вычислений в этой операционной системе), интеграция с Microsoft SQL Server, возможности создания распределенных приложений, основанных на концепции Windows DNA (Distributed interNet Applications).

Visual Fox Pro 6.0 предоставляет следующие возможности:

  • Средства публикации данных в Internet и создания Web-клиентов.
  • Средства создания ASP-компонентов и Web-приложений.
  • Средства создания COM-объектов и объектов для Microsoft Transaction Server, позволяющих создавать масштабируемые многозвенные приложения для обработки данных.
  • Средства доступа к данным серверных СУБД, базирующиеся на использовании OLE DB (набор COM-интерфейсов, позволяющий осуществить унифицированный доступ к данным из разнообразных источников, в том числе из нереляционных баз данных и иных источников, например Microsoft Exchange).
  • Средства доступа к данным Microsoft SQL Server и Oracle, включая возможность создания и редактирования таблиц, триггеров, хранимых процедур
  • Средства отладки хранимых процедур Microsoft SQL Server.
  • Средство визуального моделирования компонентов и объектов, являющиеся составными частями приложения - Visual Modeller.
  • Средство для управления компонентами приложений, позволяющее осуществлять их повторное использование.

Итак, тенденции развития этого продукта очевидны: из настольной СУБД Visual FoxPro постепенно превращается в средство разработки приложений в архитектуре «клиент/сервер» и распределенных приложений в архитектуре Windows DNA. Впрочем, эти тенденции в определенной степени характерны для всех наиболее популярных настольных СУБД - мы уже убедились, что и dBase, и Paradox также позволяют осуществлять доступ к наиболее популярным серверным СУБД.

Microsoft Access

Первая версия СУБД Access появилась в начале 90-х годов. Это была первая настольная реляционная СУБД для 16-разрядной версии Windows. Популярность Access значительно возросла после включения этой СУБД в состав Microsoft Office.

В отличие от Visual FoxPro, фактически превратившегося в средство разработки приложений, Access ориентирован в первую очередь на пользователей Microsoft Office, в том числе и не знакомых с программированием. Это, в частности, проявилось в том, что вся информация, относящаяся к конкретной базе данных, а именно таблицы, индексы (естественно, поддерживаемые), правила ссылочной целостности, бизнес-правила, список пользователей, а также формы и отчеты хранятся в одном файле, что в целом удобно для начинающих пользователей.

Последняя версия этой СУБД - Access 2000 входит в состав Microsoft Office 2000 Professional и Premium, а также доступна как самостоятельный продукт. В состав Access 2000 входят:

  • Средства манипуляции данными Access и данными, доступными через ODBC (последние могут быть «присоединены» к базе данных Access).
  • Средства создания форм, отчетов и приложений; при этом отчеты могут быть экспортированы в формат Microsoft Word или Microsoft Excel, а для создания приложений используется Visual Basic for Applications, общий для всех составных частей Microsoft Office.
  • Средства публикации отчетов в Internet.
  • Средства создания интерактивных Web-приложений для работы с данными (Data Access Pages).
  • Средства доступа к данным серверных СУБД через OLE DB.
  • Средства создания клиентских приложений для Microsoft SQL Server.
  • Средства администрирования Microsoft SQL Server.

Поддержка COM в Access выражается в возможности использовать элементы управления ActiveX в формах и Web-страницах, созданных с помощью Access. В отличие от Visual FoxPro создание COM-серверов с помощью Access не предполагается.

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

Помимо манипуляции данными Microsoft SQL Server, Access 2000 позволяет также в качестве хранилища данных использовать Microsoft Data Engine (MSDE), представляющий собой по существу настольный сервер баз данных, совместимый с Microsoft SQL Server. Об этом продукте, относительно новом по сравнению с остальными, рассмотренными в данном обзоре, речь пойдет в следующем разделе данной статьи.

Microsoft Data Engine

MSDE представляет собой СУБД, базирующуюся на технологиях Microsoft SQL Server, но предназначенную для использования в настольных системах или в сетевых приложениях с объемом данных до 2 Гбайт и небольшим количеством пользователей. По существу MSDE является облегченной версией Microsoft SQL Server, не содержащей средств администрирования, и к настольным СУБД может быть отнесена весьма условно.

В Microsoft Access пользователь может выбрать, какой механизм доступа к данным следует применять: Microsoft Jet - стандартный набор библиотек доступа к данным или MSDE (в этом случае управление базой данных осуществляется с помощью отдельного процесса). Возможно преобразование имеющихся баз данных Access в базу данных MSDE из среды разработки Access.

Базы данных MSDE полностью совместимы с базами данных Microsoft SQL Server и могут при необходимости управляться этим сервером. Как большинство серверных СУБД, эти базы данных поддерживают транзакции, позволяют создавать триггеры и хранимые процедуры (недоступные в базах данных Access), использовать механизмы защиты данных, предоставляемые операционной системой. Помимо этого при большом числе пользователей и большом объеме данных приложения, использующие MSDE, отличаются более высокой производительностью, так как обработка запросов происходит внутри процесса, управляющего базой данных, а не внутри клиентского приложения, что позволяет снизить сетевой трафик, связанный с передачей данных от сервера к клиенту.

MSDE входит в состав Microsoft Office 2000 Premium или Developer, а также доступна на Web-сайте Microsoft для зарегистрированных пользователей Visual Studio 6.0 Professional, Enterprise Edition либо любого из средств разработки, являющегося частью Visual Studio 6.0 Professional или Enterprise Edition. MSDE может свободно распространяться в составе приложений, созданных с помощью любого из средств разработки, входящего в состав Visual Studio 6.0 или Office 2000 Developer.

Заключение

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

  • приобрели визуальные средства проектирования форм, отчетов и приложений в момент появления ранних Windows-версий;
  • стали предоставлять доступ к данным серверных СУБД к моменту появления первых 32-разрядных версий;
  • приобрели средства публикации данных в Internet и в той или иной степени поддерживают создание приложений для редактирования данных с помощью Web-браузеров;
  • начали предоставлять возможность хранить описания правил ссылочной целостности внутри базы данных.

Помимо этого все современные СУБД, за исключением Corel Paradox, в качестве альтернативы собственному формату данных позволяют использовать для создания настольных приложений облегченные серверы баз данных, предназначенные для использования на одном компьютере или в рамках небольшой рабочей группы. Иными словами, история развития настольных СУБД отражает современные тенденции развития информационных систем, такие как создание распределенных систем с использованием Internet или Intranet, применение средств быстрой разработки приложений и массовый перенос приложений, использующих базы данных, включая настольные приложения, в архитектуру «клиент/сервер».

Следующая статья данного цикла будет посвящена архитектуре «клиент/сервер» и серверным СУБД, таким как IB Database, Microsoft SQL Server, Oracle, Sybase и Informix.

КомпьютерПресс 4"2000

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

База данных — это некоторый набор данных, организованный по определенным правилам и имеющий определенную структуру.

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

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

  • Иерархическая;
  • Сетевая;
  • Объектно-ориентированная;
  • Реляционная.

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

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

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

SQL (structured query language) - в переводе с английского язык структурированных запросов, применяющийся для создания, изменения и удаления данных.

Простейшая схема работы с базой данных выглядит так:

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

Виды СУБД

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

Что такое MySQL

В настоящее время в основном применяются многопользовательские СУБД. Наиболее популярные из них MS SQL Server, Oracle и MySQL.

MySQL — это самая популярная система управления базами данных при веб-разработке. Большинство сайтов и интернет-порталов, разрабатываются с применением этой СУБД.

К основным плюсам MySQL можно отнести высокую скорость работы, быстроту обработки данных, гибкость, надежность и простоту использования. Очень важным является то, что СУБД MySQL распространяется совершенно бесплатно под лицензией GNU General Public License. Кроме этого MySQL поддерживает одновременную работу неограниченного количества пользователей и обладает эффективной системой безопасности.

При разработке сайтов большинство программистов используют связку PHP + MySQL. Множество популярных систем управления сайтом (CMS) созданы именно с применением этой связки.

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

На этом все! До новых встреч!



Просмотров