Скачиваний:
71
Добавлен:
23.06.2014
Размер:
159.23 Кб
Скачать

4. Проектирование баз данных

4.1 Режимы работы с базами данных

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

Вторая категория исполнителей, работающих с базами данных, - пользователи в данном случае ими являются библиотекари и читатели, приходящие в библиотеку. Они получают исходную базу данных от проектировщиков и занимаются ее наполнением и обслуживанием. В общем случае пользователи не имеют средств доступа к управлению структурой базы – только к данным, да и то не ко всем, а к тем, работа с которыми предусмотрена на конкретном рабочем месте.

Соответственно СУБД имеет два режима работы: проектировочный и пользовательский. Первый режим предназначен для создания или изменения структуры базы и создание ее объектов. Во втором режиме происходит использование ранее подготовленных объектов для наполнения базы или получения данных из нее.

4.2 Объекты базы данных

4.2.1 Таблицы

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

Таблица «Авторы» состоит из следующих полей:

  • Author_id

  • Фамилия

  • Имя

  • Отчество

Описание данных полей таблицы не требует дополнительных комментариев, кроме того, что поля Фамилия, Имя, Отчество – текстовые, а поле author_id – ключевое и оно будет увеличиваться на единицу автоматически при внесении новых данных в таблицу.

Таблица «Авторы книги» состоит из следующих полей:

  • id

  • Author_id

  • book_id

В поле author_id – вносится id автора книги, в book_id - вносится id книги, так как у книги может быть несколько авторов.

Таблица «Выдача Книг»

  • id

  • book_id

  • reader_id

  • give-date

  • count

В поле book_id – записывается код книги, в reader_id – код читателя, give-date – дата выдачи, count – количество выданных экземпляров.

Таблица «Жанры»

  • genre_id

  • жанр

В поле genre_id – записывается код жанра, в поле «жанр» – название жанра. genre_id – ключевое поле, в данной таблице.

Таблица «Издательства»

  • publisher_id

  • название

  • страна

  • адрес

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

Таблица «Названия»

  • title_id

  • title

В поле title _id – записывается код книги, в поле «title» – заносится название книги. Title _id – ключевое поле, в данной таблице.

Таблица «Редакторы»

  • editor_id

  • Фамилия

  • Имя

  • Отчество

В поле editor_id – записывается код автора, в поле «Фамилия» – заносится фамилия автора, в поле «Имя» - имя автора, в поле «Отчество» - отчество писателя. Editor _id – ключевое поле, в данной таблице.

Таблица «Список Книг»

Данная таблица является главной. С ее помощью все основные таблицы связаны друг с другом. В случае добавление в базу данных новых таблиц (например о цене книг) нет необходимости изменять всю структуру. Нужно всего лишь добавить ключевое поле новой таблицы в таблицу «СписокКниг» и установить между ними связь. Эта таблица состоит из следующих полей:

  • Book_id

  • Название книги

  • Год выпуска

  • Author_id

  • Publisher_id

  • Editor_id

  • Genre_id

  • count

  • Номер читательского билета

  • Дата выдачи

Эта сущность отводится для хранения сведений о книгах, годах её издания, точное название, идентификаторы авторов книги, издателя, жанра, редкактора и количество экземпляров книги, а также по какому читательскому билету её получили и дата выдачи. Такое объединение допустимо, так как данные о разных книгах выбираются из одного домена (фамилия автора и название книги) и исключает дублирование данных. Так как фамилия и имена (инициалы) создателя могут быть достаточно громоздкими (М.Е. Салтыков-Щедрин, Франсуа Рене де Шатобриан, Остен Жюль Жан-Батист Ипполит и т.п.) и будут многократно встречаться в разных изданиях, то их целесообразно кодировать. Для этого вводится целочисленный атрибут "editor_id" – это поле, которое будет автоматически наращиваться на единицу при вводе в базу данных нового автора.

В поле «дата выдачи» указывается дата выдачи определенного экземпляра. Тип данных – «дата/время». Book_id – ключевое поле.

Таблица «Читатели»

  • reader_id

  • bnum

  • Фамилия

  • Имя

  • Отчество

  • Адрес

  • телефон

В поле reader_id – записывается код читателя, в поле «Фамилия» – заносится фамилия читателя, в поле «Имя» - имя читателя, в поле «Отчество» - отчество читателя, в поле «адрес» - вносится адрес читателя, в поле «телефон» - читателя. reader _id – ключевое поле, в данной таблице.

Соседние файлы в папке Курсовая_Информационные технологии в экономике (оценка хорошо)