Технология создания БД в Access

Forms ! [Заказы] ! [Дата размещения].Default Value

Оператор слияния строк & позволяет объединить значение поля, элемента управления или свойства со строкой в явном представлении. Например, в следующем выражении выполняется слияние строки «[Код Типа]=»со значением элемента управления «Код Типа» в форме «Товары»:

“[КодТипа]”=”& Forms! [Товары] ! [КодТипа]

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

Forms ! [Константы] ! [Город] .Default Value = ” ’Рига’ ”

Forms ! [Константы] ! [Город] .Default Value = ” “”Рига”” ”

Примеры некоторых выражений:

Арифметические:

=[Цена]* 1,06;

=[ДатаНазначения]-[ДатаИсполнения]

Текстовые:

=[Имя]&””&[Фамилия]

=Right([КодТовара],2)

Логические:

=IIF([Подтверждено]=”Да”, “Заказ подтвержден”, “Заказ не подтвержден”)

=IIF(IsNull ([Область]), [Город]&” ”&[Индекс], [Город]&” ”&[Область]&” “&[Индекс])

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

1. Сначала мы должны выполнить проектирование БД, которое заключается в следующем:

§ Определение цели создания БД (назначение БД, как она будет использоваться, и какие сведения она должна содержать)

§ Определение таблиц, которые должна содержать БД (определить, какие сведения будут храниться в таблицах)

§ Определение полей в таблице

§ Определение ключевых полей

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

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

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

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

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

Рассмотрим технологию разработки БД на примере БД Группа.

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

Для создания БД запустим Access. В диалоговом окне выберем вариант создать новую БД, затем в окне Файл новой базы данных откроем папку Новая папка и зададим имя Группадля создаваемой БД.

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

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

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

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

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

§ Для текстового и числового поля надо указать размер поля, причем для текста – это допустимая длина значения (например, 20 или 40 символов), а для числа – формат представления в машине (байт, целое (2 байта), длинное целое и т.д.)

§ Для поля Дата/время обязательно надо указать формат, чтобы система знала, как обрабатывать вводимые данные. Например, если выбрать Краткий формат даты, система будет ожидать от вас ввода именно даты (в русской версии – ДД.ММ.ГГ), а если выбрать Краткий формат времени, в этом поле придется набирать ЧЧ:ММ (часы и минуты).

§ В качестве значения свойства Условие на значение вы можете указать логическое выражение, которое должно принимать значение True(«Истина») при вводе данных в это поле. В следующем свойстве можно записать произвольное сообщение об ошибке, которое будет выдано системой, например: «это значение поля недопустимо». В свойстве Обязательное поле можно указать «Да» (пустые значения не допускаются) или «Нет» (пустые значения допускаются).

§ Если в первичный ключ вашей таблицы входит одно поле, в свойстве Индексированное поле для него выберете: «Да, совпадения не допускаются», а затем щелкните в панели инструментов на кнопке Определить ключ своей таблицы (и запретите ввод записей с повторяющимся значением первичного ключа).

Итак: определим поля таблицы. В графе Имя поля зададим имя «№ личного дела». Для определения типа данных этого поля, щелкнув стрелку в графе Тип данных, раскроем список возможных типов данных и выберем вариант Текстовый. В области окна конструктора Свойства поля выберем вкладку Размер поля и определим максимальное количество знаков для ввода в этом поле – 10 символов.

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

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

 

Имя поля Тип данных Свойства (формат поля)
Фамилия Текстовый 20 символов
Имя Текстовый 20 символов
Отчество Текстовый 20 символов
Дата рождения Дата/время Длинный формат даты
Домашний адрес Текстовый 50 символов
Класс Текстовый 3 символа

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

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

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

 

 

Операции с данными в таблице

Ввод данных. выбрав в окне таблицу Учащиеся, щелкнем кнопку Открыть. Установим курсор в поле № личного дела и введем значение П-69. По окончании ввода значения поля нажмем клавишу Tab для перехода к следующему полю. В остальные поля этой записи введем данные: Петров; Иван; Васильевич;12.03.89; ул. Горького, 12-34; 4А.

После окончания ввода значений всех полей записи нажмем клавишу Tab для перехода к следующей записи. Введем еще 4 записи.

 

№ личного дела Фамилия Имя Отчество Дата рождения Домашний адрес Класс
П-69 Петров Иван Васильевич 12 марта 1989 г. Ул. Горького, 12-34
С-97 Сидоров Василий Николаевич 3 декабря 1988 г. Ул. Карбышева, 34-123
Я-24 Яковлев Иван Семенович 15 января 1989 г. Пер. Садовый, 45-28
И-35 Иванов Павел Николаевич 6 июля 1988 г. Ул. Горького, 35-14
Е-56 Епишев Павел Семенович 19 апреля 1988 г. Ул. Киевская, 78-92

 

Если вам не нравится ширина столбца таблицы (например, она слишком велика или наоборот мала и скрывает часть данных), ее можно уменьшить или увеличить – точно так же, как вы изменяли ширину столбца в Excel.

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

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

Кроме того, по таблице можно перемещаться с помощью клавиш Tab,

Shift + Tab, стрелок курсора.

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

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

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

Изменим структуру таблицы, вставив перед столбцом Дата рождения столбец с полем Пол. Для этого, выделив столбец Дата рождения, в меню Вставка выберем команду Столбец.

Переименуем вставленный столбец, выделив столбец Поле1 и выбрав в меню Формат команду Переименовать столбец. После этого зададим столбцу имя Пол.

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

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

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

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

 

№ личного дела Фамилия Имя Отчество Дата рождения Пол Домашний адрес Класс
Е-56 Епишев Павел Семенович 19 апреля 1988 г. ٧ Ул. Киевская,78-92
И-35 Иванов Павел Николаевич 6 июля 1988 г. ٧ Ул. Горького,35-14
П-69 Петров Иван Васильевич 12 марта 1989 г. ٧ Ул. Горького,12-34
С-97 Сидоров Василий Николаевич 3 декабря 1988 г. ٧ Ул. Карбышева,34-123
Я-24 Яковлев Иван Семенович 15 января 1989 г. ٧ Пер. Садовый, 45-28

 

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

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

 

№ личного дела Фамилия Имя Отчество Дата рождения Пол Домашний адрес Класс
Е-56 Епишев Павел Семенович 19 апреля 1988 г. ٧ Ул. Киевская,78-92
И-35 Иванов Павел Николаевич 6 июля 1988 г. ٧ Ул. Горького,35-14

 

Чтобы снять фильтр и увидеть все записи в таблице, щелкнем кнопку Удалить фильтр в панели инструментов Стандартная.

Для отбора записей, удовлетворяющих более сложным условиям отбора, используется расширенный фильтр. Например, создадим фильтр, который отбирает из всех записей таблицы только те, которые удовлетворяют условиям: учащиеся, по отчеству «Семенович», родившиеся после 1-го января 1989 г.

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

Добавим в бланк поле Отчество, затем в ячейке Условие отбора для этого поля запишем значение «Семенович». Чтобы указать порядок расположения отфильтрованных записей таблицы, выберем ячейку Сортировка, щелкнем стрелку и выберем порядок сортировки по возрастанию. В строке поля зададим еще одно поле Дата рождения и в ячейке Условие отбора для этого поля введем условие отбора в виде логического выражения >#01.01/89#.

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

 

 

№ личного дела Фамилия Имя Отчество Дата рождения Пол Домашний адрес Класс
Я-24 Яковлев Иван Семенович 15 января 1989 г. ٧ Пер. Садовый, 45-28

 

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