Смекни!
smekni.com

Пример создания БД Материалы с помощью Access (стр. 1 из 2)

КОНТРОЛЬНАЯ РАБОТА

по курсу «Информационные технологии в экономике»

для специальности «Экономика и управление АП»

В реляционной СУБД Microsoft Access создание базы данных МАТЕРИАЛЫ.

Задание выполнено с использованием Microsoft Access – 2002.

После запуска Access в правом окне «Создание файла», если окна нет его можно запустить выбрав из меню «Файл» и «Создать», выбираем пункт «Новая база данных». В появившемся окне в своей директории сохраняем БД под уникальным именем, в нашем случае «Kolpakov».

1. Создание таблиц.

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

1. НОМЕНКЛАТУРА МАТЕРИАЛОВ – КодМатериала, Материал.

2. ПОСТАВЩИКИ – КодПоставщика, Поставщик.

3. ПОСТАВКА МАТЕРИАЛОВ – КодПоставщика, КодМатериала, ДатаПоставки, ЕдИзмерения, Количество, Цена.

Для создания таблицы НОМЕНКЛАТУРА МАТЕРИАЛОВ выполняем следующие действия:

- В окне созданной базы, находясь в пункте меню «Таблицы», нажимаем пункт «Создание таблицы в режиме конструктора».

- В появившемся окне в первой строке графы «имя поля», набираем имя «КодМатериала», тип данных выбираем счетчик и нажав на правую кнопку мыши из появившегося меню выбираем пункт «Ключевое поле».

- Во второй строке в графе «имя поля» набираем «Материал», тип данных выбираем текстовый, в свойствах поля размер поля оставляем как предлагается по умолчанию 50, считая, что название материала не будет содержать более 50 знаков.

- Закрываем конструктор, выбираем сохранить изменения и в появившемся окне вводим имя таблицы «НОМЕНКЛАТУРА МАТЕРИАЛОВ» и нажимаем «ОК».

Для создания таблицы ПОСТАВЩИКИ выполняем те же действия но создаем следующие поля со свойствами:

- КодПоставщика – тип счетчик и ключевое поле.

- Поставщик – тип текстовый.

- Закрываем конструктор и сохраняем таблицу под именем «ПОСТАВЩИКИ».

Созданные две таблицы будет в дальнейшем использоваться как словари при вводе данных в основную таблицу «ПОСТАВКА МАТЕРИАЛОВ», чтобы не вводить повторяющиеся значения такие как название материала и название поставщика. При этом в таблицу «ПОСТАВКА МАТЕРИАЛОВ» будут вводится только числовые коды поставщика и материала, а сами текстовые названия поставщика и материала будут браться потом автоматически по созданной связи из таблиц «НОМЕНКЛАТУРА МАТЕРИАЛОВ» и «ПОСТАВЩИКИ». Так будут соблюдены правила по нормализации таблиц БД, отсутствуют избыточные значения.

Основная таблица содержащая все основные данные это таблица «ПОСТАВКА МАТЕРИАЛОВ» создаем также в режиме конструктора с полями и следующими свойствами:

- КодПоставщика – тип числовой, свойство размер поля оставляем как предлагается по умолчанию «длинное целое», для организации связи с полем «КодПоставщика» из таблицы «ПОСТАВЩИКИ», свойство индексированное поле оставляем так же как и предложено по умолчанию «Да (допускаются совпадения)», т.к. связь между таблицами устанавливается только по индексированным полям.

- Также поле КодМатериала – с теми же свойствами, только связь этого поля будет в дальнейшем с полем «КодМатериала» из таблицы «НОМЕНКЛАТУРА МАТЕРИАЛОВ».

- ДатаПоставки – тип данных «Дата/время», свойство формат поля «Краткий формат даты», свойство подпись «Дата поставки».

- ЕдИзмерения – тип текстовый, свойство размер поля ставим 10, свойство подпись «Ед.изм.».

- Количество – тип данных Числовой».

- Цена – тип данных денежный, свойство формат поля «Денежный».

- Закрываем конструктор, сохраняем изменение, название таблицы набираем «ПОСТАВКА МАТЕРИАЛОВ», на предложение создать ключевое поле отвечаем нет.

2. Построение информационной схемы базы.

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

- схема данных. В появившемся окне «Добавление таблицы» выбрать таблицу «НОМЕНКЛАТУРА МАТЕРИАЛОВ» и двойным щелчком левой кнопки мыши или кнопкой «Добавить» добавить таблицу в окно «Схема данных» находящегося пока за окном «Добавление таблицы». Также добавить и другие таблицы «ПОСТАВКА МАТЕРИАЛОВ» и «ПОСТАВЩИКИ». Нажать кнопку «Закрыть».

В окне «схема данных» будут находится все три таблицы с полями, ключевые поля будут выделены жирным шрифтом. Левой копкой мыши захватить поле «КодМатериала» из таблицы «НОМЕНКЛАТУРА МАТЕРИАЛОВ» перетащить его на поле «КодМатериала» таблицы «ПОСТАВКА МАТЕРИАЛОВ» и отпустить копку мыши. В появившемся окне поставить галочку в поле флажка «Обеспечение целостности данных» и поставить галочки в полях флажков «каскадное обновление связанных полей» и «каскадное удаление вязанных полей». Данные действия будут теперь выполнятся автоматически и это будет обеспечивать целостность и правильность данных в БД. Нажать кнопку «Создать». От таблицы «НОМЕНКЛАТУРА МАТЕРИАЛОВ» к таблице «ПОСТАВКА МАТЕРИАЛОВ» протянулась линия со значками 1 и ¥, что означает связь один-ко-многим. То есть одному коду материала в таблице «НОМЕНКЛАТУРА МАТЕРИАЛОВ» будет соответствовать несколько записей с таким же кодом материала в таблице «ПОСТАВКА МАТЕРИАЛОВ».

Также поступаем с полем «КодПоставщика» из таблицы «ПОСТАВЩИКИ» и перетаскиваем его на поле «КодПоставщика» из таблицы «ПОСТАВКА МАТЕРИАЛОВ». Связь аналогичная как рассмотрели выше.

Если внимательно посмотреть на схему данных то мы увидим, что автоматически образовалась связь типа многие-ко-многим, для таблиц «НОМЕНКЛАТУРА МАТЕРИАЛОВ» и «ПОСТАВЩИКИ», через таблицу «ПОСТАВКА МАТЕРИАЛОВ». То есть один поставщик может поставлять несколько материалов, что будет отражено в таблице «ПОСТАВКА МАТЕРИАЛОВ» и будет это видно в отчете «Поступление материалов от поставщиков по видам», в то же время один материал может поставляться несколькими поставщиками, что будет также отражено в таблице «ПОСТАВКА МАТЕРИАЛОВ» и будет видно в отчете «Поступление материалов по видам от поставщиков».

Закрываем окно «Схема данных», на вопрос о сохранении отвечаем да.

Теперь я могу описать информационную схему базы. Она имеет следующий вид.

Как видно из информационной схемы моя база данных основывается на трех таблицах «НОМЕНКЛАТУРА МАТЕРИАЛОВ», «ПОСТАВЩИКИ» и «ПОСТАВКА МАТЕРИАЛОВ». В этих таблицах содержатся все необходимые данные. На основании этих трех таблиц создается запрос «Поступление материалов от поставщиков по видам» с полями из следующих таблиц:

- «ПОСТАВЩИКИ» – поле «Поставщик», данное поле автоматически находится для соответствующей записи из таблицы «ПОСТАВКА МАТЕРИАЛОВ» с использованием связи по полю «КодПоставщика» и подставляется для кода соответствующее название поставщика.

- «НОМЕНКЛАТУРА МАТЕРИАЛОВ» – поле «Материал», также автоматически находится с использованием связи по полю «КодМатериала» и подставляется для кода соответствующее название материала.

- «ПОСТАВКА МАТЕРИАЛОВ» – поля «ДатаПоставки», «ЕдИзмерения», «Количество», «Цена».

В запросе появляется вычисляемое поле «Сумма» которое находится при вычислении запроса как произведение поля «Цена» на поле «Количество» из таблицы «ПОСТАВКА МАТЕРИАЛОВ». Данное поле является условно-постоянным, т.к. на самом деле данное поле в базе данных не сохранятся, а вычисляется каждый раз при производстве запроса на выборку по соответствующим данным.

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

- «Поступление материалов от поставщиков по видам» – с полями «Поставщик», «Материал», «ДатаПоставки», «ЕдИзмерения», «Количество», «Цена», «Сумма», и группируется данный отчет по полю «Поставщик» на первом уровне и по полю «Материал» на втором.

- «Поступление материалов по видам от поставщиков» – с полями «Материал», «Поставщик», «Количество», «Цена», «Сумма», и группируется данный отчет по полю «Материал» на первом уровне и по полю «Поставщик» на втором уровне.

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

На основании запроса «Поступление материалов по датам за определенный период» формируется отчет «Поступление материалов по датам за определенный период».

3. Создание форм для занесения данных в таблицы.

Данные можно вводить и используя таблицы, открыв их двоным щелчком левой кнопки мыши, однако в данном случае неудобно будет заполнять таблицу «ПОСТАВКА МАТЕРИАЛОВ», поскольку в первые поля надо будет вводить коды материала и поставщика. Для удобства ввода данных в таблицы создаем следующее формы «ПОСТАВЩИКИ», «МАТЕРИАЛЫ» и «ДАННЫЕ О ПОСТАВКЕ МАТЕРИАЛОВ». Для этого переходим в меню «Формы» моей базы данных и нажав два раза левую кнопку мыши запускаем «Создание формы с помощью мастера». Выбираем таблицу «НОМЕНКЛАТУРА МАТЕРИАЛОВ» из полей данной таблицы выбираем поле «Материал» и жмем по кнопке « > », нажимаем «Далее >», выбираем «Ленточный», «Далее >», из списка выбираем «Стандартный», в поле вводим наименование формы «МАТЕРИАЛЫ» и нажимаем кнопку «Готово». Вводим названия материалов. Закрываем форму. При необходимости можно добавить данные нажав два раза левую кнопку мыши на форме.

Также создаем форму «ПОСТАВЩИКИ»,т.е. запускаем «Создание формы с помощью мастера», выбираем таблицу «ПОСТАВЩИКИ», выбираем поле «Поставщик» по кнопке « > », по копке «Далее >», выбираем «Ленточный» по копке «Далее >», «Стандартный» по копке «Далее >», имя формы оставляем как предложено по имени таблицы .е. «ПОСТАВЩИКИ» и нажимаем копку «Готово». Вводим названия поставщиков. Закрываем форму.