24
24
11.1. Базы данных
Любой из нас, начиная с раннего детства, многократно сталкивался с «базами данных». Это — всевозможные справочники (например, телефонный), энциклопедии и т. п. Записная книжка — это тоже «база данных», которая есть у каждого из нас.
Базы данных представляют собой информационные модели, содержащие данные об объектах и их свойствах. Базы данных хранят информацию о группах объектов с одинаковым набором свойств.
Например, база данных «Записная книжка» хранит информацию о людях, каждый из которых имеет фамилию, имя, телефон и так далее. Библиотечный каталог хранит информацию о книгах, каждая из которых имеет название, автора, год издания и так далее.
Информация в базах данных хранится в упорядоченном виде. Так, в записной книжке все записи упорядочены по алфавиту, а в библиотечном каталоге — либо по алфавиту (алфавитный каталог), либо по области знания (предметный каталог).
База данных (БД) - это информационная модель, позволяющая в упорядоченном виде хранить данные о группе объектов, обладающих одинаковым набором свойств.
Существует несколько различных структур информационных моделей и соответственно различных типов баз данных: табличные, иерархические и сетевые.
11.1.1. Табличные базы данных
Табличная база данных содержит перечень объектов одного типа, то есть объектов, имеющих одинаковый набор свойств. Такую базу данных удобно представлять в виде двумерной таблицы: в каждой ее строке последовательно размещаются значения свойств одного из объектов; каждое значение свойства — в своем столбце, озаглавленном именем свойства.
Столбцы такой таблицы называют полями; каждое поле характеризуется своим именем (именем соответствующего свойства) и типом данных, представляющих значения данного свойства.
Поле базы данных - это столбец таблицы, содержащий значения определенного свойства.
Строки таблицы являются записями об объекте; эти записи разбиты на поля столбцами таблицы, поэтому каждая запись представляет собой набор значений, содержащихся в полях.
Запись базы данных - это строка таблицы, содержащая набор значений свойств, размещенный в полях базы данных.
Каждая таблица должна содержать, по крайней мере, одно ключевое поле, содержимое которого уникально для каждой записи в этой таблице. Ключевое поле позволяет однозначно идентифицировать каждую запись в таблице.
Ключевое поле - это поле, значение которого однозначно определяет запись в таблице.
В качестве ключевого поля чаще всего используют поле, содержащее тип данных счетчик. Однако иногда удобнее в качестве ключевого поля таблицы использовать другие поля: код товара, инвентарный номер и т. п.
Тип поля определяется типом данных, которые оно содержит. Поля могут содержать данные следующих основных типов:
счетчик — целые числа, которые задаются автоматически при вводе записей. Эти числа не могут быть изменены пользователем;
текстовый — тексты, содержащие до 255 символов; числовой — числа; дата/время — дата или время; денежный — числа в денежном формате; логический — значения Истина (Да) или Ложь (Нет); гиперссылка — ссылки на информационный ресурс в Интернете (например, Web-сайт).
Поле каждого типа имеет свой набор свойств. Наиболее важными свойствами полей являются:
• размер поля — определяет максимальную длину текстового или числового поля;
• формат поля — устанавливает формат данных;
• обязательное поле — указывает на то, что данное поле обязательно надо заполнить.
Рассмотрим, например, базу данных «Компьютер», которая содержит перечень объектов (компьютеров), каждый из которых имеет имя (название). В качестве характеристик (свойств) можно рассмотреть тип установленного процессора и объем оперативной памяти. Поля Название и Тип процессора являются текстовыми, Оперативная память — числовым, а поле JV? п/п — счетчиком (табл. 11.1).
При этом каждое поле обладает определенным набором свойств. Например, для поля Оперативная память задан формат данных целое число.
Таблица 11.1. Табличная база данных
№п/п
1
Название
Compaq
Dell
IBM
Тип процессора
Celeron
РепйиггГЩ
Pentium 4
Оперативная память (Мбайт) ___________64
128
256 QCit
ЗГ
11.1.2. Иерархические и сетевые базы данных
Иерархические базы данных. Иерархические базы данных графически могут быть представлены как перевернутое дерево, состоящее из объектов различных уровней. Верхний уровень (корень дерева) занимает один объект, второй — объекты второго уровня и так далее.
Между объектами существуют связи, каждый объект может включать в себя несколько объектов более низкого уровня. Такие объекты находятся в отношении предка (объект, более близкий к корню) к потомку (объект более низкого уровня), при этом объект-предок может не иметь потомков или иметь их несколько, тогда как объект-потомок обязательно имеет только одного предка. Объекты, имеющие общего предка, называются близнецами.
Иерархической базой данных является Каталог папок Windows, с которым можно работать, запустив Проводник. Верхний уровень занимает папка Рабочий стол. На втором уровне находятся папки Мой компьютер, Мои документы, Сетевое окружение и Корзина, которые являются потомками папки Рабочий стол, а между собой является близнецами. В свою очередь, папка Мой компьютер является предком по отношению к папкам третьего уровня —папкам
Иерархической базой данных является Реестр Windows, в котором хранится вся информация, необходимая для нормального функционирования компьютерной системы (данные о конфигурации компьютера и установленных драйверах, сведения об установленных программах, настройки графического интерфейса и др.).
Содержание реестра автоматически обновляется при установке нового оборудования, инсталляции программ и т. п. Для просмотра и редактирования реестра Windows в ручном режиме можно использовать специальную программу rege-dit.exe, которая хранится в папке Windows. Однако редактирование реестра можно проводить только в случае крайней необходимости и при условии понимания выполняемых действий. Неквалифицированное редактирование реестра может привести компьютер в неработоспособное состояние.
Рис. 11.2
Иерархическая база данных Реестр Windows
•р-.Праию бия;
.^*](По умопчвнию) ^Identifier 53upde« Stohit jflVendorldentrrier
НИШ]
ШШВШШШЯ
(значение не присвоено) 'irrtel(r) Celeron(tm) Processt 0*00000007 (7) "Genuine Intel"
.
J Мой компьютер !£ Hi HKEY_CtASSES_ROOT ф- Bi HKEY.CUaREI^TJJSER S Bl HKEYJ.0O4._MACHtNE
! ф (Eal Config
;+. CJdw ; ШШ Enum : S-{j£| Hardware I ; &Ш Description i i ; B-iBl System
S iJ| CentroiProceseoi
Щ $Й FloatmgPointPTocessor '± &j MuhtunciioiAdepte,-: В Qj DeviceMap
§EI SeriotComm ; ф Qj Network i Ш Cj Security : ,~: Cj Software ! &Ш System В Si HKEYJJSERS 8» Bl HKEY_CURB£MT_CONRG ЕЁ U HKEY_DVH_DATA
Еще одним примером иерархической базы данных является база данных Доменная система имен подключенных к Интернету компьютеров. На верхнем уровне находится табличная база данных, содержащая перечень доменов верхнего уровня (всего 264 домена), из которых 7 — административные, а остальные 257 — географические. Наиболее крупным доменом (данные на январь 2002 года) является домен net (около 48 миллионов серверов), а в некоторых доменах (например, в домене zr) до сих пор не зарегистрировано ни одного сервера.
На втором уровне находятся табличные базы данных, содержащие перечень доменов второго уровня для каждого домена первого уровня.
На третьем уровне могут находиться табличные базы данных, содержащие перечень доменов третьего уровня для каждого домена второго уровня, и таблицы, содержащие IP-адреса компьютеров, находящихся в домене второго уровня (рис. 11.3).
Рис. 11.3. Иерархическая база данных Доменная система имен
База данных Доменная система имен должна содержать записи обо всех компьютерах, подключенных к Интернету, то есть более 150 миллионов записей. Размещение такой огромной базы данных на одном компьютере сделало бы поиск информации очень медленным и неэффективным. Решение этой проблемы было найдено путем размещения отдельных составных частей базы данных на различных DNS-серверах. Таким образом, иерархическая база данных Доменная система имен является распределенной базой данных.
Поиск информации в такой иерархической распределенной базе данных ведется следующим образом. Например, мы хотим ознакомиться с содержанием WWW-сервера фирмы Microsoft.
Сначала наш запрос, содержащий доменное имя сервера www.microsoft.com, будет оправлен на DNS-сервер нашего провайдера, который переадресует его на DNS-сервер самого верхнего уровня базы данных. В таблице первого уровня будет найден интересующий нас домен com и запрос будет адресован на DNS-сервер второго уровня, который содержит перечень доменов второго уровня, зарегистрированных в домене com.
В таблице второго уровня будет найден домен microsoft и запрос будет переадресован на DNS-сервер третьего уровня. В таблице третьего уровня будет найдена запись, соответствующая доменному имени, содержавшемуся в запросе. Поиск информации в базе данных Доменная система имен будет завершен и начнется поиск компьютера в сети по его IP-адресу.
Сетевые базы данных. Сетевая база данных является обобщением иерархической за счет допущения объектов, имеющих более одного предка. Вообще, на связи между объектами в сетевых моделях не накладывается никаких ограничений.
Сетевой базой данных фактически является Всемирная паутина глобальной компьютерной сети Интернет. Гиперссылки связывают между собой сотни миллионов документов в единую распределенную сетевую базу данных.
11.2. Система управления базами данных Access
Системы управления базами данных (СУБД). Развитие информационных технологий привело к созданию компьютерных баз данных. Создание баз данных, а также операции поиска и сортировки данных выполняются специальными программами — системами управления базами данных (СУБД). Таким образом, необходимо различать собственно базы данных (БД), которые являются упорядоченными наборами данных, и системы управления базами данных (СУБД) — программы, управляющие хранением и обработкой данных.
Система управления базами данных (СУБД) -
это программа, позволяющая создавать базы данных, а также обеспечивающая обработку (сортировку) и поиск данных.
Системой управления базами данных является приложение Access, входящее в Microsoft Office.
Знакомство с СУБД Access
Запустить Access командой [Пуск-Программы-Microsoft Access].
С помощью команды [Файл-Открыть базу данных...] открыть существующую базу данных, например, базу данных «Провайдеры Интернета», хранящуюся на CD-ROM в каталоге extbookAccess.
™
- ъ;----------------------------
I II пи. ."ПЛЯТТ!•• г
ЙПрииетр »JKi*ctWT4J »:йя««т*: ^;;:'«;>^:ffl:::':-;• ^ЭСознание отчета ■ режиме конструктора
■В Соэпоиио отчете с помрщор мест вро
1 Демос
2 Гласнвт
3 МТУ-Ин
4 Зенон
5 Клравал
6 Портал
апеу-ЙН" 1Г
400 850 1200;
450 210 250
45www.dcri 112 www.^a:1_
155 www.ahfX iOOSBExar 5 www.
I ° : 26,0Op.
■ в I 0,00р.
1200; 0!
Ш;МТУ-.^ 0!
ДЯИЦ*Т?г1ЖЯж1
В Access используется стандартный для среды Windows&Offi-се многооконный интерфейс, но в отличие от других приложений, не многодокументный. Единовременно может быть открыта только одна база данных, содержащая обязательное окно базы данных и окна для работы с объектами базы данных. В каждый момент времени одно из окон является активным и в нем курсором отмечается активный объект.
Окно базы данных — один из главных элементов интерфейса Access. Здесь систематизированы все объекты БД: таблицы, запросы, формы, отчеты, макросы и модули. В данном случае открыто и активно окно Провайдеры Интернета: база данных.
Таблица. В базах данных вся информация хранится в двумерных таблицах. Это базовый объект БД, все остальные объекты создаются на основе существующих таблиц (производные объекты). Каждая строка в таблице — запись БД, а столбец — поле. Запись содержит набор данных об одном объекте, а поле — однородные данные обо всех объектах.
В данном случае открыто окно Провайдеры Интернета: таблица.
Запросы. В СУБД запросы являются важнейшим инструментом. Главное предназначение запросов — отбор данных на основании заданных условий. С помощью запроса из базы данных можно выбрать информацию, удовлетворяющую определенным условиям.
В данном случае открыто окно Запрос1: запрос на выборку.
Формы. Формы позволяют отображать данные, содержащиеся в таблицах или запросах, в более удобном для восприятия виде. При помощи форм можно добавлять в таблицы новые данные, а также редактировать или удалять существующие. Форма может содержать рисунки, графики и другие внедренные объекты.
В данном случае открыто окно формы Провайдеры Интернета.
Отчеты. Отчеты предназначены для печати данных, содержащихся в таблицах и запросах, в красиво оформленном виде.
В данном случае открыто окно отчета Провайдеры Интернета.
Макросы. Макросы служат для автоматизации повторяющихся операций. Запись макроса производится так же, как в других приложениях, например как в приложении Word.
Модули. Модули также служат для автоматизации работы с БД. Модули еще называют процедурами обработки событий и пишутся на языке VBA.