СУБД MS Access 2003 (960526), страница 9
Текст из файла (страница 9)
Одна таблица - для сущности Клиенты, другая - для сущности Модели. Связывание таблиц осуществим путем введения атрибута Код модели в таблицу Клиенты. Этот атрибут являетсяключевым для односвязной сущности Модели.Тема 3. Таблицы57Предлагаемые моделиКод моделиКлиентыНомер заказаКод моделиТаблица Модели должна быть дополнена атрибутами, задающими характеристики моделей, например такими, как мощностьдвигателя, цвет, количество дверей и т. п.
Таблица Клиенты - атрибутами, связанными с заказом и с клиентом, осуществляющимзаказ: фамилия и адрес заказчика, телефон, дата заказа, скидкаи т. п. Первая группа атрибутов функционально зависит от ключевого атрибута сущности Модели (Код модели), вторая - от ключевого атрибута сущности Клиенты (Номер заказа). Следовательно,полученные отношения находятся в НФБК.1.2. Связи между таблицамиОпределим некоторые понятия, относящиеся к связи междутаблицами.Результатом проектирования по методу «сущность-связь» является совокупность взаимосвязанных таблиц. Связь между таблицами осуществляется через одинаковые по смыслу атрибуты.Назовем их атрибутами связи. В одних таблицах эти атрибутыиграют роль ключевых, в других - они вводятся дополнительнопо правилам 1-8 для отображения связи.
В нашем примере таблицы Модели и Клиенты связаны с помощью атрибута Код модели.В таблице Модели он ключевой, а в таблице Клиенты - обычныйатрибут. Та таблица, в которой атрибут связи является ключом отношения, называется главной, а связанная с ней по этому атрибутутаблица называется подчиненной. Информация, хранящаяся в подчиненной таблице, зависит от данных главной таблицы.
Агрибутсвязи в подчиненной таблице называется внешним ключом. Длярассматриваемого примера таблица Модели является главной, таблица Клиенты - подчиненной, атрибут Код модели в таблице Клиенты будет внешним ключом.Рекомендуется, прежде чем создавать, а главное, заполнятьданными таблицы, определить между ними отношение порядка.58Проектирование баз данных. СУБД MS AccessК нулевому уровню отнесем те таблицы, данные в которых не зависят от данных других таблиц.
Обычно это таблицы со справочными данными. К первому уровню будут принадлежать те таблицы, данные в которых зависят только от таблиц нулевого уровня,ко второму - таблицы, данные в которых зависят от таблиц нулевого и первого уровня, и т. д. Полученное отношение порядка определяет порядок создания и заполнения таблиц. Сначала создаются и заполняются таблицы нулевого уровня, затем - первогои т. д.
Для нашего примера таблица Модели относится к нулевомууровню, она независимая, а таблица Клиенты - к первому уровню,следовательно, сначала надо создать и заполнить таблицу Модели,а затем таблицу Клиенты.Приступим теперь к реализации БД TOYOTA в СУБД Access.Сначала создадим таблицу с полной информацией о всех моделях«Toyota», а затем разработаем таблицу заказов всех клиентов.2. Создание БДВ первую очередь следует создать БД, в которой будут сохранены все другие объекты: таблицы, запросы, формы и т.
д.В прикладном окне Access из меню Файл выберите команду Создать или щелкните на кнопке с изображением пустого бланкана стандартной панели инструментов. В правой части окна будетотображена панель со списком возможных действий. В верхнейчасти данной панели вам будет предложено открыть файл либоиз списка, построенного программой, либо из указанного места.Чуть ниже, в разделах Создание, Создание из имеющегося файлаи Создание с помощью шаблона, будет предложено создать новую БД Access различными способами. Тут создание и из шаблона, и из имеющегося файла, а также создание проекта Access илиСтраницы доступа к данным.
Кнопки реализованы в виде гиперссылок, как на страницах в Интернете. Щелкнем на ссылке Новаябаза данных и Access отобразит на экране диалоговое окно создания файла базы Файл новой базы данных. В этом окне найдитесвою папку и в поле Имя файла введите имя файла, в котором будет храниться БД, например TOYOTA. Access автоматически добавит расширение имени БД .mdb. Для закрытия диалогового окнавыполните щелчок на кнопке ОК.Тема 3.
ТаблицыAccess создаст файл БД и затем индицирует пока еще пустоеокно, в котором можно создать объекты новой БД (рис. 27).В MfcfiOeoffr Access - [Simple : базе данных (формат Access 2000J]ФайлПравкаВставкаСервис£JCHC£праека_ Я XКонструктор3jИjСоздание страницы доступа к данным с помощью мастераИзменение существующей веб-страницыГотовоРис.
27. Окно БД3. Создание таблицы моделей автомобилейПриступим к созданию первой таблицы. В ней должны находиться данные о моделях автомобилей, включая технические характеристики, цвет, тип салона, а также отпускную цену заводаплюс транспортные издержки и затраты на предпродажную подготовку.В окне БД щелкните на кнопке Таблицы и нажмите кнопкуСоздать, чтобы приступить к проектированию новой таблицы.Access откроет диалоговое окно, в котором будет предложено воспользоваться одним из следующих способов создания таблицы.Режим таблицы - создание таблицы в табличном представлении (проектирование таблицы происходит в ходе ее заполнения поанализу вводимых данных).Проектирование баз данных.
СУБД MS Access60Конструктор - создание таблицы с помощью конструкторатаблиц.Мастер таблиц - создание таблицы с помощью мастера таблиц на основе коллекции таблиц и полей.Импорт таблиц - создание таблицы пугем импорта данныхиз внешнего файла или из другой БД.Связь с таблицами - присоединение внешнего файла или таблицы другой БД.Выберите опцию Конструктор для создания таблицы с помощью конструктора таблиц и нажмите кнопку ОК.В верхней части появившегося окна (рис. 28) задайте поля, которые должна содержать таблица. В нижней части Свойства полядайте детальное определение формата полей таблицы, задавая длякаждого поля необходимые характеристики.Е Microsoft Access - [Тайлн^а! : тайлцца] ...ШфайлГлавкавидВставкаСервисфсно^правкаСеойстм поляОбшиеПодстановка№wi now можетсостсягь *й £•!четомелов, Дпясправки по именамПОПЙКонструкте^.
F6 = переключение окон.Рис. 28. Окно проектирования таблицы в режиме конструктораТема 3, Таблицы613.1. Объявление полейСначала продумайте, какие поля и в какой последовательностидолжна содержать создаваемая таблица.Таблица моделей должна состоять из следующих полей:•Код модели.•Модель.•Мощность (кВт/л, с.).•Цвет,• Количество дверей.•Коробка передач.•Обивка.•Другое оснащение.•Заводская цена.• Транспортные издержки.••Предпродажные издержки.Специальная модель,Эти имена полей следует ввести друг под другом в колонкуИмя поля. Затем для каждого поля в колонке Тип данных надлежит установить тип хранимых в нем данных. В Access предусмотрены типы данных полей, приведенные в табл.
41.Таблица 41ТипТекстовыйMEMOЧисловойДата/ВремяДенежныйСчетчикЛогическийОбъект OLEОписаниеЦепочка алфавитно-цифровых символов (длинойне более 255 символов)Текст переменной длины (общий объем памяти до64 000 байт)Числовые значения (целые или вещественные числа)Дата и времяДенежныйУникальное число, которое в каждой новой записиAccess автоматически увеличивается на 1Логические значения (истина или ложь)OLE-объекты и иллюстрации62Проектирование баз данных. СУБД MS AccessОкончание таблицы 41ТипОписаниеГиперссылкаСтрока, состоящая из букв и цифр и представляющаяадрес гиперссылки (текста или файла с текстом)МастерподстановокСоздает поле, в котором предлагается выбор значений из списка или из поля со списком, содержащиминабор постоянных значений или значений из другойтаблицы.
Выбор этого параметра в списке запускаетмастера подстановок, который определяет тип поляПосле выполнения щелчка в колонке Тип данных появитсяманипулятор открытия списка, при нажатии на который развернется список со всеми доступными типами данных.Маркируйте необходимый тип данных, после чего список автоматически закроется и выбранный тип будет внесен в колонкуТип данных текущей строки.Чтобы сделать таблицы понятными, для каждого поля таблицыможно ввести описание (комментарий) в колонку Описание.Но наличие (или отсутствие) комментария никак не влияет на корректность спецификации таблицы. В качестве примера комментария рассмотрим поле Цепа разрабатываемой таблицы.
В колонкуОписание спецификации этого поля можно ввести следующийкомментарий: «Полная продажная цена, включая налог на добавленную стоимость». Теперь эта фраза будет появляться в статусной строке в момент обращения к полю Цена.Ввод полей всегда осуществляйте построчно, т. е. для каждогополя сначала вводите имя поля, затем тип данных поля и, наконец,если есть необходимость, описание поля.
Переход к следующейячейке строки осуществляется с помощью нажатия клавиши [Tab].Для перехода к нужной ячейке можно также выполнить на нейщелчок. Черный треугольник в селекторной колонке (самая леваяколонка в окне проектирования) всегда идентифицирует ту строку,с которой в данный момент работает пользователь. Для решенияпоставленной задачи введите спецификации полей так., как это показано в приведенной ниже табл. 42.Тема 3. Таблицы63Таблица 42Имя поляТип данныхполяКод моделиЧисловойНазвание моделиЦветКоличество дверейТекстовыйТекстовыйЧисловойКоробка передачОбивкаДругое оснащениеЗаводская ценаТекстовыйТекстовыйMEMOДенежныйДенежныйТранспортныеиздержкиПредпродажнаяподготовкаСпециальнаямодельДенежныйЛогическийОписаниеКод заказа модели по заводскомукаталогуТип кузоваЦвет кузоваДвухдверный или четырехдверный салонАвтоматическая или ручнаяВелюр, кожа, тканьДополнительные аксессуарыЗаводская продажная нетто-ценаИздержки на доставкуИздержки на предпродажнуюподготовкуСпециальная модель или стандартное исполнениеНа экране монитора таблица выглядит приблизительно еледующим образом (рис.