Проектирование базы данных строительного предприятия

Автор: Пользователь скрыл имя, 27 Сентября 2011 в 19:18, курсовая работа

Описание работы

Цель курсового проекта – разработка автоматизированной системы управления проектами на примере строительной компании.

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

1. Теоретические основы создания базы данных.

2. Проектирование базы данных строительного предприятия.

Содержание

Введение 3
Глава 1. Теоретические основы создания базы данных 4
1.1. Microsoft Access как настольная СУБД реляционного типа 4
1.2. Различия между СУБД Access и электронными таблицами Excel 6
1.3. Создание новой базы данных 8
Глава 2. Проектирование базы данных строительного предприятия 9
2.1. Создание базы данных 9
2.2. Технология разработки базы данных 9
Выводы 27
Список литературы 29

Работа содержит 1 файл

курсовой проект ИТУ.DOC

— 1.78 Мб (Скачать)

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

      Завершив  ввод описания полей таблицы, определите первичный ключ.

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

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

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

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

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

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

      Связь между таблицами  и целостность  данных

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

      Типы  связей между таблицами. При установлении связи между таблицами возможны три типа связей.

            1.    Отношение «один-ко-многим». Это наиболее часто используемый тип связи между таблицами. В отношении «один-ко-многим»каждой записи в таблице А могут соответствовать несколько записей в таблице В, но запись в таблице В не может иметь более одной соответствующей ей записи в таблице А.

            2.    Отношение «многие-ко-многим». При этом типе связи одной записи в таблице А могут соответствовать несколько записей в таблице В, а одной записи в таблице В - несколько записей в таблице А.Этот тип связи возможен только с помощью третьей (связующей) таблицы, первичный ключ которой состоит из двух полей, которые являются внешними ключами таблиц А и В. Отношение «многие-ко-многим» по сути представляет собой два отношения «один-ко-многим» с третьей таблицей. Например, отношение «многие-ко-многим» между таблицами «Заказы» и «Товары» определяется путем создания двух отношений «один-ко-многим» с таблицей «Заказано».

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

      Тип отношения в создаваемой Microsoft Access связи между таблицами зависит  от способа определения связываемых  полей. Отношение «один-ко-многим» создается в том случае, когда только одно из полей является ключевым или имеет уникальный индекс. Отношение «один-к-одному» создается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы. Отношение «многие-ко-многим» фактически является двумя отношениями «один-ко-многим» с третьей таблицей, первичный ключ которой состоит из полей — внешних ключей двух других таблиц.

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

      Целостность данных означает:

            ·         в связанное поле подчиненной таблицы можно вводить только те значения, которые имеются в связанном поле главной таблицы;

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

      Установить  целостность данных можно, если выполнены  следующие условия.

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

            2.    Связанные поля не обязательно должны иметь одинаковые имена, но они должны иметь одинаковые типы данных (из этого правила существуют два исключения) и иметь содержимое одного типа. Кроме того, связываемые поля числового типа должны иметь одинаковые значения свойства Размер поля (FieldSize).

            Исключения: 1) поле счетчика можно связывать с числовым полем, свойство Размер поля (FieldSize) которого имеет значение Длинное целое; 2) поле счетчика можно связать с числовым, если для обоих полей в свойстве Размер поля (FieldSize) задано значение Код репликации.

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

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

      Установив целостность данных, необходимо следовать  следующим правилам:

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

            2.    Не допускается удаление записи из главной таблицы, если существуют связанные с ней записи в подчиненной таблице. Например, невозможно удалить запись из таблицы «Сотрудники», если в таблице «Заказы» имеются заказы, относящиеся к данному сотруднику.

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

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

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

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

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

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

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

      Например, при удалении из таблицы «Клиенты» записи конкретного клиента будут автоматически удалены все связанные записи в таблице «Заказы» (а также записи в таблице «Заказано», связанные с записями в таблице «Заказы»).

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

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

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

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

      

      Печать  окна схемы данных. Для создания отчета, отображающего связи между таблицами базы данных в том виде, как они показаны в окне схемы данных, Microsoft Access использует мастер печати схемы данных. Для создания такого отчета при открытом окне Схема данных выберите в меню Файл команду Печать схемы данных. После этого раскроется окно отчета о связях между таблицами в текущей базе данных. Закройте окно отчета с сохранением, щелкнув кнопку «Да» в ответ на запрос Сохранить изменения макета отчета?, задав имя отчета, щелкните кнопку «ОК».

      Использование фильтра для отбора данных в таблице

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

      Рис. 6. Вид записей таблицы Учащиеся с фильтром Имя=«Павел»

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

Информация о работе Проектирование базы данных строительного предприятия