Автор: Пользователь скрыл имя, 05 Ноября 2011 в 21:54, курсовая работа
Систематическая организация данных и способов их обработки осуществляется в банках данных. Банк данных = база данных + СУБД.
База данных - это некоторая структурированная совокупность данных, описывающая некоторую предметную область решаемых задач.
Элемент описания - наименьшая единица описания в базе данных. Совокупность элементов описания, объединенных отношением принадлежности к одному объекту называется записью.
СОДЕРЖАНИЕ 3
1. ПРОЕКТИРОВАНИЕ БАЗ ДАННЫХ 4
1.1. ОБЩИЕ ТЕОРЕТИЧЕСКИЕ ПОЛОЖЕНИЯ 4
1.1.1. Основные определения 4
1.1.2. Понятие “Ключ” 4
1.1.3. Понятие «нормализации» 5
1.1.4. Понятие "сущность" и "связь" 5
1.2. ОБЩЕСИСТЕМНЫЙ РАЗДЕЛ 6
1.2.1. Модели данных. 6
1.2.2. Иерархические системы 6
1.2.3. Сетевые системы 7
1.2.4. Реляционная модель данных. 8
1.3. ПРЕДСТАВЛЕНИЕ ДАННЫХ С ПОМОЩЬЮ МОДЕЛИ СУЩНОСТЬ-СВЯЗЬ (ER- МОДЕЛЬ). 9
1.3.1. Нормальные формы ER-схем 9
1.3.2. Получение реляционной схемы из ER-схемы 10
1.4. ПРОЕКТИРОВАНИЕ РЕЛЯЦИОННЫХ БД 11
1.5. НОРМАЛИЗАЦИЯ. 12
2. СПЕЦИАЛЬНАЯ ЧАСТЬ 14
2.1. ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ 14
2.2. ИССЛЕДОВАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ И РАЗРАБОТКА МОДЕЛИ 15
2.3. РЕАЛИЗАЦИЯ МОДЕЛИ 22
3. ЗАКЛЮЧЕНИЕ. 30
4. СПИСОК ЛИТЕРАТУРЫ: 32
id_subrubric INTEGER NOT NULL,
id_rubric INTEGER NOT NULL,
id_part INTEGER NOT NULL,
PRIMARY KEY (id_phone, id_link_type, id_announcement,
id_rubric, id_subrubric, id_part),
FOREIGN KEY (id_link_type, id_announcement, id_subrubric,
id_rubric, id_part)
id_announcement, id_subrubric, id_rubric, id_part)
ON DELETE CASCADE
);
CREATE UNIQUE INDEX XPKphones ON phones
(
id_phone ASC,
id_link_type ASC,
id_announcement ASC,
id_rubric ASC,
id_subrubric ASC,
id_part ASC
);
CREATE TABLE addresses (
id_address INTEGER NOT NULL DEFAULT AUTOINCREMENT,
populated_point VARCHAR(30),
street VARCHAR(30),
house VARCHAR(10),
apartament VARCHAR(7),
id_link_type INTEGER NOT NULL,
id_announcement INTEGER NOT NULL,
id_subrubric INTEGER NOT NULL,
id_rubric INTEGER NOT NULL,
id_part INTEGER NOT NULL,
PRIMARY KEY (id_address, id_link_type, id_announcement,
id_subrubric, id_rubric, id_part),
FOREIGN KEY (id_link_type, id_announcement, id_subrubric,
id_rubric, id_part)
id_announcement, id_subrubric, id_rubric, id_part)
ON DELETE CASCADE
);
CREATE UNIQUE INDEX XPKaddresses ON addresses
(
id_address ASC,
id_link_type ASC,
id_announcement ASC,
id_subrubric ASC,
id_rubric ASC,
id_part ASC
);
CREATE TABLE frequency_used_words (
id_word INTEGER NOT NULL DEFAULT AUTOINCREMENT,
id_subrubric INTEGER NOT NULL,
id_rubric INTEGER NOT NULL,
id_part INTEGER NOT NULL,
word VARCHAR(20),
PRIMARY KEY (id_word, id_subrubric, id_rubric, id_part),
FOREIGN KEY (id_subrubric, id_rubric, id_part)
id_rubric, id_part)
);
CREATE UNIQUE INDEX XPKfrequency_used_words ON frequency_used_words
(
id_word ASC,
id_subrubric ASC,
id_rubric ASC,
id_part ASC
);
CREATE TABLE contact_faces (
family VARCHAR(20),
first_name VARCHAR(20),
last_name VARCHAR(20),
id_contact_face INTEGER NOT NULL DEFAULT AUTOINCREMENT,
id_link_type INTEGER,
id_announcement INTEGER,
id_subrubric INTEGER,
id_rubric INTEGER,
id_part INTEGER,
PRIMARY KEY (id_contact_face),
FOREIGN KEY (id_link_type, id_announcement, id_subrubric,
id_rubric, id_part)
id_announcement, id_subrubric, id_rubric, id_part)
);
CREATE UNIQUE INDEX XPKcontact_faces ON contact_faces
(
id_contact_face ASC
);
CREATE TABLE e_address (
id_e_address INTEGER NOT NULL DEFAULT AUTOINCREMENT,
email VARCHAR(30),
ICQ_UIN VARCHAR(16),
id_link_type INTEGER NOT NULL,
id_announcement INTEGER NOT NULL,
id_subrubric INTEGER NOT NULL,
id_rubric INTEGER NOT NULL,
id_part INTEGER NOT NULL,
PRIMARY KEY (id_e_address, id_link_type, id_announcement,
id_subrubric, id_rubric, id_part),
FOREIGN KEY (id_link_type, id_announcement, id_subrubric,
id_rubric, id_part)
id_announcement, id_subrubric, id_rubric, id_part)
);
CREATE UNIQUE INDEX XPKe_address ON e_address
(
id_e_address ASC,
id_link_type ASC,
id_announcement ASC,
id_subrubric ASC,
id_rubric ASC,
id_part ASC
);
Данный код позволяет создать базу данных по описанной модели. Создаются таблицы, их атрибуты, первичные и внешние ключи, поля для индексации данных для быстрого поиска. На основе этой базы данных можно создать приложение, выполняющие функции, перечисленные в описании предметной области. Вариант приложения, выполняющего данную задачу, представлен на рисунке.
В результате проектирования была разработана модель реляционной базы данных, позволяющая обеспечить хранение и обработку частных объявлений. Такой подход позволяет легко получать файл-отчёт, содержащий объявления, выходящие в текущем номере, чтобы использовать их для вёрстки газеты. Если объявления, допустим, параллельно публикуются на сайте в Интернете, то очень просто поритровать базу данных для использования в интерактивных Интернет - приложениях.
Разработанная база данных отвечает всем требованиям, предъявляемым к реляционным отношениям, находится в 4НФ, не содержит аномалий, что позволяет судить о ее надежности и быстроте функционирования.