Создание и изменение объектов
Чтобы начать разработку нового приложения, следует создать пустую базу данных, а затем добавить в нее таблицы и другие объекты. В Microsoft Access поддерживаются два способа создания базы данных. Можно создать пустую базу данных, а затем добавить в нее таблицы, формы, отчеты и другие объекты. Такой способ является наиболее гибким, но требует отдельного определения каждого элемента базы данных. Имеется также возможность сразу создать с помощью Мастера базу данных определенного типа со всеми необходимыми таблицами, формами и отчетами. Это простейший способ начального создания базы данных.
Если мы хотим создать пустую базу данных, то при запуске СУБД Microsoft Access выбираем опцию Новая база данных, если же приложение уже запущено то отдаем команду Файл\Создать, переходим на вкладку Общие и открываем База данных (можно также использовать кнопку ). После этого откроется окно диалога Файл новой базы данных. В раскрывающемся списке Папка выбираем нужный папка для сохранения создаваемой БД. Затем в поле Имя файла вводим имя новой базы данных. Access автоматически добавит к имени файла расширение .mdb. Далее нажимаем кнопку Создать и на экране появится окно базы данных.
Далее возможно создание любых объектов «вручную» либо с помощью Мастера, который автоматически генерирует объект в диалоге с пользователем. Независимо от способа создания объекта режим конструктора позволяет в любой момент изменить его структуру.
Работа с объектами.
Таблицы
Базы данных могут содержать различные объекты, но основными объектами любой базы данных являются таблицы. Простейшая база данных имеет хотя бы одну таблицу. Структуру двумерной таблицы определяют столбцы и строки. Их аналогами в структуре простейшей базы данных являются поля и записи. Если записей в таблице нет, значит, ее структура определена набором полей.
В Microsoft Access существуют четыре способа создания пустой таблицы:
1. Мастер по созданию базы данных позволяет создать сразу все таблицы, формы и отчеты в базе данных. Этот мастер создает новую базу данных; его нельзя использовать для добавления новых таблиц, форм или отчетов в существующую базу данных.
2. Мастер по созданию таблицы позволяет выбрать поля, включаемые в таблицу, из широкого списка образцов полей разных типов, предназначенных для сохранения данных о деловых контактах, для ведения домашнего хозяйства или для регистрации медицинской информации.
3. Пользователь имеет возможность самостоятельно ввести данные в пустую таблицу в режиме таблицы. При сохранении новой таблицы Microsoft Access проанализирует данные и автоматически присвоит соответствующий тип данных и формат каждому полю.
4. В режиме конструктора можно непосредственно указать параметры всех элементов структуры таблицы.
Таблицыслужат для хранения данных в определенной структуре. Таблицы составляют основу базы данных.
Таблица состоит из записей (строк), каждая из которых описывает одну сущность. Каждый столбец таблицы -это поле. Столбец содержит однотипную информацию.
Для каждого поля необходимо указывать тип данных. Тип данных определяет вид и диапазон допустимых значений, которые могут быть введены в поле, а также объем памяти, выделяющийся для этого поля.
Таблица может содержать следующие типы полей:
ТекстовыйКороткий текст. Текст и числа, например, имена и адреса, номера телефонов и почтовые индексы. Текстовое поле может содержать до 255 символов.
Поле МемоДлинный текст и числа, например, комментарии и пояснения. Меmо- поле может содержать до 65 535 символов.
ЧисловойОбщий тип для числовых данных, допускающих проведение математических расчетов, за исключением расчетов для денежных значений. Свойство Размер поля позволяет указать различные типы числовых данных. Длина - до 8 байт. Точность -до 15 знаков.
Дата/времяЗначения даты и времени. Пользователь имеет возможность выбрать один из многочисленных стандартных форматов или создать специальный формат. Длина - 8 байт.
ДенежныйДенежные значения. Числа представляются с двумя знаками после запятой. Не рекомендуется использовать для проведения денежных расчетов значения, принадлежащие к числовому типу данных, так как последние могут округляться при расчетах. Значения типа "Денежный" всегда выводятся с указанным числом десятичных знаков после запятой. Длина - 8 байт.
СчетчикАвтоматически вставляющиеся последовательные номера. Счетчик увеличивается на единицу для каждой следующей записи. Нумерация начинается с 1. В таблице может быть только одно такое поле.
ЛогическийЗначения "Да"/"Нет", "Истина'/Ложь", "Вкл"/"Выкл", т.е. одно из двух возможных значений. Длина - 1 байт.
ПолеобъектаОLЕОбъекты, созданные в других программах, поддерживающих протокол ОLЕ, например графики, рисунки и т.п. Объекты связываются или внедряются в базу данных MicrosoftAccess через элемент управления в форме или отчете.
Гиперссылка- позволяет вставлять в поле гиперссылку, с помощью которой можно ссылаться на произвольный фрагмент данных внутри поля или страницы на том же компьютере, в локальной сети или в Internet.
Мастерподстановок– запускает Мастера подстановок, создающего поле подстановок. Поле подстановок позволяет выбирать значение поля из списка, содержащего набор постоянных значений или значений из другой таблицы
Связи между таблицами БД
Почти все современные СУБД основаны на реляционной модели данных. Название "реляционная" связано с тем, что каждая запись в такой базе данных содержит информацию, относящуюся (related) только к одному объекту. Кроме того, с данными о двух объектах можно работать как с единым целым, основанным на значениях связанных между собой данных. Все данные в реляционной БД представлены в виде таблиц.
Реляционные базы данных состоят из нескольких таблиц, связь между которыми устанавливается с помощью совпадающих полей. Связи, во-первых, обеспечивают целостность БД, а во-вторых, позволяют автоматизировать задачи обслуживания базы. Каждая запись в таблицах идентифицирует один объект. Отношение между объектами определяет отношение между таблицами. Существует 4 типа отношений:
1. Отношение «один-к-одному» означает, что каждая запись в одной таблице соответствует только одной записи в другой таблице.
2. Отношение «один-ко-многим» означает, что каждой записи в одной таблице соответствует одна или несколько записей в другой таблице.
3. Отношение «многие-ко-одному» аналогично рассмотренному ранее типу. Тип отношения между объектами зависит от вашей точки зрения.
4. Отношение «многие-ко-многим» возникает между двумя таблицами в тех случаях, когда:
· одна запись из первой таблицы может быть связана более чем с одной записью из второй таблицы;
· одна запись из второй таблицы может быть связана более чем с одной записью из первой таблицы.
Определение ключевого поля
Для создания связей между таблицами необходимо в каждой таблице определить ключевое поле. В качестве такового выбирают поле, данные в котором повторяться не могут (например идентификационный код). Если в таблице такого поля нет, то его можно создать искусственно комбинацией полей, например для таблицы где содержится расписание занятий такой комбинацией являются поля «Время занятий» и «Номер аудитории». Если в таблице вообще нет полей, которые могут быть использоваться в качестве ключевых, то следует ввести дополнительное поле типа Счетчик – оно не может содержать повторяющихся данных по определению.
Для определения ключевого поля, необходимо в режиме конструктора, выделить нужное поля и нажать клавишу на панели инструментов или отдать команду Ключевое поле в меню Правка или в контекстном меню. Если необходимо создать ключевое поле на базе нескольких полей, то нужно сначала выделить эти поля (удерживая клавишу Ctrl щелкать на квадратных маркерах слева от имен полей), а затем отдать команду Ключевое поле.
Если необходимо назначить ключевым другое поле, то прежде нужно отменить неверно заданный ключ (выделить соответствующее поле и нажать кнопку или отдать команду Ключевое поле), а затем задать новое ключевое поле.
Создание связей между таблицами
Чтобы определить связи, необходимо использовать команду Сервис\Схема данных(или кнопка ). Если связь определяется впервые в базе данных, то Access откроет пустое окно Схема данных, а затем выведет на экран окно диалога Добавление таблицы. В этом окне необходимо выделить нужные таблицы и нажать кнопку Добавить. Окно диалога Добавление таблицыдает возможность добавить как таблицы, так и запросы. Кнопка Закрытьзакрывает окно диалога Добавление таблицы(данное окно можно вызвать по нажатию кнопки
). После этого окно Схемы данныхбудет выглядеть примерно так, как показано на рис.1.а. Чтобы установить связь между таблицами, надо выбрать поле, которое есть в обеих таблицах (поле по которому будут связываться таблицы) и перетащить его из одной таблицы в другую. Когда вы отпустите кнопку мыши, Microsoft Access откроет окно диалога Связи, представленное на рис.2.
а) б)
Рис.1 . Окно Схема данных.
После установки флажка Обеспечение целостности данных, Access делает доступными еще два флажка: Каскадное обновление связанных полей и Каскадное удаление связанных записей. Включение флажка Обеспечение целостности данных позволяет защититься от случаев удаления записей из одной таблицы, при которых связанные с ними данные других таблиц останутся без связи. Чтобы условие целостности могло существовать, поле основной таблицы должно обязательно быть ключевым и оба поля должны иметь одинаковый тип. Флажки Каскадное обновление связанных полей и Каскадное удаление связанных записей обеспечивают одновременное обновление или удаление данных во всех подчиненных таблицах при их изменении в главной таблице. Например, если вы решили удалить какого-либо исполнителя в таблице Исполнители, то в этом случае следует удалить соответствующие данные в связующей таблице Альбомы. Access автоматически выполнит эту операцию, если установлен флажок Каскадное удаление связанных записей.
Рис. 2. Окно диалога Связи
После нажатия кнопки Создать Access создаст связь и нарисует линию между двумя таблицами, указывающую на наличие связи между ними. Заметьте, когда вы просите обеспечить целостность данных, Access изображает на конце линии у таблицы, находящейся на стороне отношения «один», цифру 1, а на другом конце у таблицы со стороны отношения «многие» – символ бесконечности (см. рис.1.б). Чтобы удалить связь, щелкните по ее линии и нажмите клавишу Del. Если вы хотите отредактировать или изменить существующую связь, дважды щелкните по соответствующей линии, чтобы снова открыть окно диалога Связи.
Изменение таблиц
Изменение структуры таблиц
В режиме Конструктора таблицы можно изменять имена, типы и свойства полей, порядок их следования, удалять и добавлять поля.
Для изменения имени поля нужно перейти в строку с именем этого поля в окне Конструктора таблицы и внести изменения в столбце Имя поля.
Для вставки нового поля нужно установить курсор на поле, перед которым оно будет вставлено, и выполнить команду Вставка\Строкиили нажать клавишу Insert. На появившейся пустой строке нужно ввести имя нового поля и выбрать тип данных для него.
Для удаления поля нужно выделить строку с его именем и выполнить команду Правка\Удалить или нажать клавишу Delete.
Для изменения типа поля или его формата нужно в режиме Конструктора выделить это поле, перейти в столбецТип данных, раскрыть список типов данных и выбрать нужное значение. Аналогично можно изменять свойства поля, перейдя в бланк Свойства.
Для сохранения всех изменений достаточно просто закрыть окно Конструктора.