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

Хотя первичные ключи являются важной частью реляционной модели данных, в первых реляционных СУБД (System/R, DB2, Oracle и других) не была обеспечена явным образом их поддержка. Как правило, проектировщики базы данных сами следили за тем, чтобы у всех таблиц были первичные ключи, однако в самих СУБД не было возможности определить для таблицы первичный ключ. И только в СУБД DB2 Version 2, появившейся в апреле 1988 года, компания IBM реализовала поддержку первичных ключей. После этого подобная поддержка была добавлена в стандарт ANSI/ISO.

Одним из отличий реляционной модели от первых моделей представления данных было то, что в ней отсутствовали явные указатели, используемые для реализации отношений предок/потомок в иерархической модели данных. Однако вполне очевидно, что отношения предок/потомок существуют и в реляционных базах данных. Например, в приведенной выше базе данных каждый из служащих закреплен за конкретным офисом, поэтому ясно, что между строками таблицы «Подразделения» и таблицы «Сотрудники» существует отношение. Не приводит ли отсутствие явных указателей в реляционной модели к потере информации?

Как следует из рис.2.3, ответ на этот вопрос должен быть отрицательным. На рисунке изображено несколько строк из таблиц «Подразделения» и «Сотрудники». Обратим внимание на то, что в столбце «Подразделение» таблицы «Сотрудники» содержится идентификатор офиса, в котором работает служащий. Доменом этого столбца (множеством значений, которые могут в нем храниться) является множество идентификаторов офисов, содержащихся в столбце «Код» таблицы «Подразделения». То, в каком офисе работает инженер Шустров, можно узнать, определив значение столбца «Подразделение» в строке таблицы «Сотрудники» для Шустрова (число 2) и затем отыскав в таблице «Подразделения» строку с таким же значением в столбце «Код» (это для службы внутреннего аудита качества). Таким же образом, чтобы найти всех работников службы внутреннего аудита качества, следует запомнить значение столбца «Код» для нее (число 2), а потом просмотреть таблицу «Сотрудники» и найти все строки, в столбце «Подразделение» в которых содержится число 2 (это строки для и ).

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

Столбец одной таблицы, значения в котором совпадают со значениями столбца, являющегося первичным ключом другой таблицы, называется внешним ключом. На рис.2.3 столбец «Подразделение» представляет собой внешний ключ для таблицы «Подразделения». Значения, содержащиеся в этом столбце, представляют собой идентификаторы офисов. Эти значения соответствуют значениям в столбце «Код», который является первичным ключом таблицы «Подразделения». Совокупно первичный и внешний ключи создают между таблицами, в которых они содержатся, такое же отношение предок/потомок, как и в иерархической базе данных.

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

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

Внешние ключи являются неотъемлемой частью реляционной модели, поскольку реализуют отношения между таблицами базы данных. К сожалению, как и в случае с первичными ключами, поддержка внешних ключей отсутствовала в первых реляционных СУБД. Она была введена в системе DB2 Version 2 и теперь имеется во всех коммерческих СУБД.

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

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

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

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

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

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

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

— определение данных;

— определение представлений;

— обработку данных (интерактивную и программную);

— условия целостности;

— идентификация прав доступа;

— границы транзакций (начало, завершение и отмена).

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

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

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

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

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

11.  Правило независимости распространения. Реляционная СУБД не должна зависеть от потребностей конкретного клиента.

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

2.3.4.СУБД Microsoft Access и ее реляционная база данных

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

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

ü  Во-первых, в Microsoft Access наиболее полно реализована концепция реляционных баз данных в том виде, в котором она была разработана Коддом.

ü  Во-вторых, Microsoft Access является элементом Microsoft Office и, следовательно, его не надо специально приобретать.

ü  В-третьих, Microsoft Access наиболее хорошо работает с другими приложениями Microsoft Office, а также другими форматами баз данных, например популярным до недавнего времени форматом DBase. dbf.

ü  В-четвертых, в Access 2000 получили значительное развитие два технологических направ­ления, составляющих основу корпоративных сетей:

-  Технология клиент/сервер, для реализации которой в Access включены средства создания проекта-приложения, работающего в качестве клиента баз данных SQL-сервера. Подключение к серверу реализуется с помощью нового интерфейса OLE DB без использования ядра баз данных Microsoft Jet. В Microsoft SQL Server 7.0 этот интерфейс является базовым. Благо­даря этому Access становится универсальной основой для построения клиентских приложений, работающих с SQL-сервером.

-  Internet-технология, позволяющая эффективно распространять и полу­чать доступ к разнородной информации в глобальных и корпоративных сетях. Эта технология обеспечивает унифицированный доступ к данным различных приложений в разнородных сетях. Для реализации Internet-технологии в Access включены новые интерактивные средства конструи­рования Web-страниц доступа к данным в базах Access и SQL-серверов. При этом Web-браузер используется как универсальный интерфейс для доступа и работы с информацией из внешней среды вне зависимости от аппаратно-программной платформы компьютера пользователя и компью­тера — источника информации. Страницы могут использоваться подобно формам Access — для ввода и редактирования данных или подобно отче­там Access — для отображения иерархически сгруппированных записей.

К сожалению, система Access не лишена недостатков.

Ø  Во-первых, как и у других программных продуктов фирмы Microsoft наблюдаются ошибки в работе;

Ø  Во-вторых, Access не всегда корректно конвертирует файлы версии 97 года в формат Access 2000. Компилированные файлы (.mde) в принципе читаются только теми версиями, в которых они созданы.

Ø  В-третьих, Access достаточно тяжело работает для сопровождения распределенных баз данных.

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

Access входит в состав Microsoft Office (в варианты Professional, Premium и Developer) и, как и другие компоненты Office, работает в среде Windows 95, Windows 98, 2000, XP или Windows NT Workstation 4.0 и выше.

Практическим минимумом, предъявляемым Access к персональному компьютеру, является Pentium 75 MHz и 16 Мб оперативной памяти при работе под Windows 95 или Windows 98 или 32 Мб при работе под Windows NT Workstation. При одновременном выполнении нескольких приложений Office необходимо дополнительно для каждого приложения по 4 Мб, а для Access, Outlook и FrontPage по 8 Мб, а для PhotoDraw - 16 Мб. При стандартной установке набора приложений: Word, Excel, Outlook, PowerPoint, Access, FrontPage требуется примерно 250 Мб на жестком диске. В зависимости от конфигурации приложений требования к объему жесткого диска изменятся. Рекомендуется монитор SVGA, возможно использование VGA. При установке приложений Office на локальном компьютере тре­буется дисковод CD-ROM.

2.3.5.Объекты Access

Access ориентирована на работу с объектами, к которым относятся таблицы базы данных, запросы, а также объекты приложений для работы с базой дан­ных: формы, отчеты, страницы, макросы и модули.

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

При создании приложений пользователя также используются средства про­граммирования, реализуемые объектами другого типа — макросами и моду­лями на языке программирования Visual Basic for Applications (VBA).

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

Объекты представлены в окне базы данных Access. Все операции по работе с объектами базы данных и приложений начинаются в этом окне.

Таблицы (Tables) создаются пользователем для хранения данных об одном информационном объекте модели данных предметной области. Таблица со­стоит из полей (столбцов) и записей (строк). Каждое поле содержит одну характеристику объекта предметной области. В записи собраны сведения об одном экземпляре этого объекта.

Запросы (Queries) создаются пользователем для выборки нужных данных из одной или нескольких связанных таблиц. Результатом выполнения запроса является таблица, которая может быть использована наряду с другими таб­лицами БД при обработке данных. Запрос может формироваться в виде за­просов по образцу (QBE) или с помощью инструкции SQL — языка струк­турированных запросов. С помощью запроса можно также обновить, удалить или добавить данные в таблицы или создать новые таблицы на ос­нове уже существующих.

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

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

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

Макросы (Macros). Макрос является программой, которая содержит описа­ние последовательности действий, выполняемых при наступлении некото­рого события в объекте или элементе управления приложения. Каждое дей­ствие реализуется макрокомандой. Создание макросов осуществляется в диалоговом режиме путем выбора нужных макрокоманд и задания парамет­ров, используемых ими при выполнении.

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

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

2.4.  Размещение базы данных

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

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

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

В Access включены средства разработки проекта — приложения, обес­печивающие работу с базой данных, размещенной на SQL-сервере. Проект размещается в файле .adp на компьютере пользователя. При создании про­екта пользователь может создать базу данных на сервере SQL или использо­вать существующую.

2.5.  Интерфейс Access

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

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

С помощью мыши можно переносить объекты между различными базами данных. При этом необходимо запустить две задачи Microsoft Access. Воз­можен перенос таблиц и запросов Access в другие приложения, например, в Microsoft Word и Microsoft Excel. Можно выделить данные в форме или в объекте в режиме таблицы и перенести только их. Можно создать таблицу путем переноса с помощью мыши диапазона ячеек Microsoft Excel в окно базы данных Microsoft Access. Объекты других приложений (объекты OLE, Object Linking and Embedding) могут быть перенесены в поле объекта OLE в таблицу или форму в режиме формы, а также в форму или отчет в режиме конструктора.

В Access предусмотрено широкое использование технологии IntelliSense, ко­торая помогает пользователю ориентироваться в выборе необходимых дейст­вий и обеспечивает высокую производительность труда пользователя за счет автоматизации выполнения основных функций. Выдача Помощником (Office Assistant) контекстно-зависимой справочной информации помогает принять решение, как лучше выполнить то или иное действие, или найти нужный инструмент в Access. Справочная система Access 2000 построена на основе HTML и поэтому ра­бота с ней не отличается от работы в программах просмотра Internet. К сожалению, в большинстве версий продукта русификация справочной системы неполная. Справочная система Access 97 хорошо русифицирована представляется более удобной. При вызове справки ее окно теперь не заслоняет окно Access, которое автомати­чески изменяет размер, освобождая пространство для окна справки.

Всплывающие подсказки кратко описывают назначение кнопок панели ин­струментов при установке курсора мыши на них. Кроме того, предусмотре­ны более содержательные всплывающие определения. Они появляются при использовании кнопки Контекстная справка (Что это такое?) (What's This) знак вопроса которой можно переносить на любой элемент в окне. В диалоговых окнах для получения всплывающего определения об их эле­ментах используется кнопка называемая Справка.

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

2.6.  Диалоговые средства конструирования объектов

Access предоставляет в распоряжение непрограммирующего пользователя разнообразные диалоговые средства, которые позволяют ему создавать при­ложения, не прибегая к разработке запросов на языке SQL или к програм­мированию макросов или модулей на языке VBA.

Для автоматизации создания объектов БД - таблиц, запросов по примеру (Query By Example, QBE), схемы базы данных, и объектов приложения (форм, отчетов, страниц) используются специализированные диалоговые средства, называемые конструктором (Design). Конструктор предоставляет пользователю набор инструментов, с помощью которых можно быстро соз­дать и модифицировать объект. Для конструирования макета форм, отчетов и страниц используется панель элементов, которая появляется при вызове конструктора.

Предусмотрено автоматическое конструирование форм, запросов, отчетов, страниц и их элементов с помощью программ-мастеров и команд, начи­нающихся с приставки «авто».

В Access 2000 для упрощения внесения изменений в объекты базы данных разработана технология интеллектуальной замены имен объектов в базе дан­ных. При этом автоматически исправляются ошибки, вызванные переимено­ванием таблиц, полей, форм, отчетов, запросов, текстовых блоков или дру­гих элементов управления. Реализуется за счет того, что каждый именуемый объект (или элемент) базы данных имеет внутренний уникальный иденти­фикатор, имя является только псевдонимом. При переименованиях изменя­ется лишь псевдоним и при необходимости корректируются все ссылки на объект из других объектов. Для применения этой технологии следует до соз­дания объектов установить соответствующие параметры в разделе Автозаме­на имен (Name AutoCorrect) на закладке Общие (General), открываемой через меню Сервис/Параметры (TooIs/Options).

2.6.1.Мастера баз данных

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

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

Для отображения списка шаблонов типовых БД, с которыми работает мас­тер, достаточно нажать кнопку Создать (New) в окне Access и далее в окне Создание (New) выбрать вкладку Базы данных (Database).

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

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

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

2.6.2.Средства программирования

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

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

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

Наряду с языком макрокоманд Access включает развитую интегрированную среду объектно-ориентированного программирования Visual Basic for Applications (VBA), позволяющую реализовать любые программные ре­шения.

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

Среда VBA объединяет разнообразные наглядные графические инструменты: редактор VBA, окно разрабатываемого проекта, окно свойств объектов про­екта, окно просмотра объектов, отладчик и др. Все инструменты унифици­рованы и являются общими для всех продуктов Microsoft Office, для Visual Basic, а также продуктов ряда других фирм. Такая практически единая для различных приложений Office среда позволяет совместно использовать их объекты.

Приложения, разрабатываемые на VBA, могут выполняться только в той среде, в которой поддерживается VBA, в то время как Visual Basic ориенти­рован на полностью самостоятельную разработку автономно выполняющих­ся приложений. Язык VBA является производным от самостоятельной сис­темы программирования Visual Basic и имеет с ним много общего. Их синтаксис и интерфейс практически одинаков. Для пользователя, знакомого с программированием на Visual Basic, освоение VBA не вызовет трудностей.

В Access макросы могут быть преобразованы в программы на языке VBA. Это позволяет упростить подготовку программ на VBA, которые затем могут быть усовершенствованы при использовании более мощных средств VBA.

2.6.3.Многопользовательская база данных Access

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

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

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

Концепция файлового сервера в локальной сети обеспечивается рядом сете­вых операционных систем. Наиболее популярными являются Microsoft Windows NT и NetWare Novell. Windows NT имеет версию Windows NT Server, предназначенную для управления файловым и другими серверами се­ти, и версию Windows NT Workstation, которая устанавливается на рабочей станции. Windows NT Workstation является полностью 32-разрядной опера­ционной системой, под управлением которой могут выполняться различные приложения, в том числе и Microsoft Access. Заметим, что Windows NT Workstation может работать не только на процессорах Intel, но и на ряде Rise-процессоров.

Для обеспечения защиты данных от одновременной корректировки несколь­кими пользователями сети в Access предусматривается блокировка страниц памяти размером в 4 Кб, при которой блокируются все записи на странице. Access 2000 дополнительно к блокировке страничного уровня поддерживает блокировку на уровне записи. Выбор режима блокировки на уровне записи в текущей базе данных управляется параметром Блокировка записей при открытии базы данных (Open databases using record level locking) меню Cepвис/Параметры/Другие (Tools/Options/Advanced). Если этот флажок сброшен, по умолчанию будет использована блокировка на уровне страницы.

2.6.4.Репликация баз данных

Для пользователей, которые совместно работают с приложением, но не всегда имеют возможность подключаться к сети, Access предлагает исполь­зование репликации базы данных. Репликацией называют создание специ­альных копий-реплик общей БД Access, с которыми пользователи могут од­новременно работать на разных рабочих станциях. Например, при работе в командировке или дома, когда невозможно подключиться к сети, или когда необходимо уменьшить загрузку сети. Отличие репликации от обычного ко­пирования файлов баз данных заключается в том, что для копий БД воз­можна синхронизация изменений. При репликации ядро базы данных Microsoft Jet вносит в базу данных ряд изменений.

Преобразование базы данных в реплицированную выполняется командой меню Сервис/Репликация/Создать реплику (Tools/Replication/Create Replica). При этом Access присваивает базе данных статус основной реплики и создает одну новую реплику.

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

После внесения изменений в реплики становится возможной их синхрониза­ция, которая выполняется с помощью команды Синхронизация (Synchronize Now). Если пользователи двух разных реплик по-разному изменили одну и ту же запись, то при синхронизации реплик создается конфликтная таблица. Для того чтобы просмотреть и исправить конфликтующие записи, следует выпол­нить команду Устранить конфликты (Resolve Conflicts).

Могут реплицироваться не все объекты базы данных. Часть объектов может использоваться локально. Часть объектов может реплицироваться группами пользователей. При проведении сеанса синхронизации работа с базой дан­ных может продолжаться.

2.7.  Практическое задание

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

1.  Управление документацией.

2.  Обслуживание пациентов поликлиники.

3.  Регистрация автомототранспорта.

4.  Прием студентов в учебное заведение.

5.  Контроль качества продукции.

6.  Изготовление детали (любой на выбор).

7.  Управление кадрами.

8.  Разработка домашней видеотеки.

9.  Организация работы оптовой фирмы.

10.  Разработка графика работы персонала предприятия.

11.  Инвентаризация оборудования подразделения.

12.  Управление измерительным оборудованием.

2.8.  Указания по выполнению работы

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

5.  Полученная база данных не должна содержать избыточной информации.

6.  Результат оформить в виде группы таблиц:

Информационная задача: {привести задание}

Таблица (название)

Атрибут

Статус атрибута

Имя таблицы, в которую входит атрибут

Имя атрибута

Поле связи и/или ключевое поле (если таковым является)

2.9.  Контрольные вопросы

8.  Определение реляционной базы данных.

9.  Организация таблиц реляционной базы данных.

10.  Отношения предок/потомок в реляционной системе.

11.  Реализация сетевых структур в реляционной базе данных.

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

13.  Достоинства и недостатки СУБД Access.

14.  Объекты Access.

15.  Мастера баз данных Access.

16.  Средства программирования Access.

Репликация баз данных.

3.  Лабораторная работа №3. Cоздание базы данных в среде ACCESS

3.1.  Цель работы

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

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8