Проектирование и реализация информационно-поисковой системы с помощью CASE-средства DBDesigner

Возможности программы DBDesigner. Проектирования базы данных: предметная область, инфологическая и датологическая модели. Редактирование поисковой системы с помощью CASE-средства DBDesigner: моделирование, кодирование. Создание запросов на языке SQL.

Рубрика Программирование, компьютеры и кибернетика
Вид лабораторная работа
Язык русский
Дата добавления 24.08.2009
Размер файла 1011,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

21

Отчет по дисциплине "Базы данных"

Лабораторная работа

"Проектирование и реализация информационно-поисковой системы с помощью CASE-средства DBDesigner"

Москва 2008

Содержание

  • ЗАДАНИЕ
  • ВОЗМОЖНОСТИ ПРОГРАММЫ DBDESIGNER
  • Основные этапы проектирования базы данных:
  • ВЫПОЛНЕНИЕ
  • 1. Моделирование
    • 1) Создание таблиц
    • 2) Формирование отношений
  • 2. Кодирование
  • 3. Работа с базой данных
    • 1) Установление соединения с базой данных на сервере
    • 2) Синхронизация
  • 4. SQL-запросы
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

ЗАДАНИЕ

Целью данной лабораторной работы является проектирование и реализация информационно-поисковой системы с помощью CASE-средства DBDesigner в среде Intranet:

1. Моделирование

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

2) Формирование отношений

2. Кодирование

3. Работа с базой данных

1) Установление соединения с базой данных на сервере

2) Синхронизация

4.SQL-запросы

ВОЗМОЖНОСТИ ПРОГРАММЫ DBDESIGNER

CASE-средства представляют собой программные средства, поддерживающие процессы создания и/или сопровождения информационных систем, такие как: анализ и формулировка требований, проектирование баз данных и приложений, генерация кода, тестирование, обеспечение качества, управление конфигурацией и проектом.

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

DBDesigner - это свободно распространяемая CASE-система, предназначенная для проектирования, моделирования, создания и поддержки информационных систем. Программа может использоваться для Windows 2000/XP, Linux KDE/Gnome и MySQL. DBDesigner позволяет:

· создавать модель проектируемой системы;

· преобразовывать модели системы в SQL-код, который можно использовать для создания базы данных с помощью DBDesigner или другого средства;

· проводить реинжиниринг - построение исходной модели программной системы путем исследования ее программных кодов. Эта функция очень удобна в случае, если необходимо разобраться уже существующей базе данных. Для проведения реинжиниринга следует выбрать в меню Database - Revers Engineering;

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

· создавать SQL-запросы для внесения изменений и проведения операций над данными.

Пользовательский интерфейс программы:

Основные этапы проектирования базы данных:

1. Описание предметной области. Определение цели создания базы данных.

2. Определение сущностей предметной области (таблиц), которые должна содержать база данных.

3. Определение атрибутов сущностей (необходимых в таблицах полей).

4. Построение инфологической модели. Определение связей между сущностями (таблицами).

Предметная область:

База данных содержит информацию о фирмах зарегистрированных в России.

Инфологическая модель:

Собственник (ФИО собственника, Адрес проживания собственника, Номер телефона собственника);

Фирма (Государственный регистрационный № фирмы, Юридический адрес фирмы, Название фирмы, Тип фирмы);

Офис (Адрес офиса, Площадь офиса, Количество персонала офиса);

Датологическая модель:

Здесь составим саму реляционную модель проектируемой БД: раскроем все связи между сущностями как связи между ключами. Для этого добавим в одну из связываемых сущностей дополнительный атрибут - первичный ключ из другой сущности. Причем добавление будем осуществлять в ту из этих сущностей, где не нарушится понятие ее первичного ключа.

Собственник

Фирма

Офис

ФИО собственника

Гос. рег. № фирмы

Адрес офиса

Адрес проживания собственника

Юридический адрес фирмы

Площадь офиса

Номер телефона собственника

Название фирмы

Количество персонала офиса

Тип фирмы

Гос. рег. № фирмы

ФИО собственника

Собственник (ФИО собственника, Адрес проживания собственника, Номер телефона собственника);

Фирма (Государственный регистрационный № фирмы, Юридический адрес фирмы, Название фирмы, Тип фирмы, ФИО собственника);

Офис (Адрес офиса, Площадь офиса, Количество персонала офиса, Государственный регистрационный № фирмы);

ВЫПОЛНЕНИЕ

Предметной областью разрабатываемой базы системы является информация об унитарных предприятиях, зарегистрированных в России. Информация о предприятиях включает в себя информацию о собственнике, о самой фирме, об офисе. Необходимо обеспечить возможность внесения, изменения или удаления данных в базе и проведение различных поисковых операций: поиск по названию фирмы, поиск по ФИО предпринимателя.

1. Моделирование

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

Для создания модели необходимо переключится в Design Mode, выбрав меню Display - Design Mode.

Пользовательский интерфейс делает создание модели базы данных очень легким.

DBDesigner 4 поддерживает Multible Document Interface(MDI), который позволяет открывать неограниченное число моделей одновременно. При работе, вы можете переключаться между моделями, копируя команды и объекты, чтобы обмениваться ими между моделями.

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

В левой части холста находится панель инструментов. Необходимо нажать на этой панели кнопку и указать место на холсте, где будет располагаться новая сущность. Появится прямоугольное изображение пустой сущности. Чтобы задать атрибуты сущности, необходимо два раз щелкнуть на изображении сущности. В появившемся окне можно задать название сущности, а также атрибуты этой сущности.

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

Для этой сущности введены следующие атрибуты:

· ФИО собственника (FIO_owner) (ключевой атрибут),

· Адрес проживания собственника (owner_adress),

· Телефонный номер собственника (owner_tel_number),

· Дата регистрации (owner_date_reg),

· Паспортные данные (owner_pasport)

Флаг в поле NN означает, что содержимое данного поля не может быть нулевым ( Not Null ). Флаг в поле AI означает, что значение данного поля в каждой следующей строке увеличивается на 1 (Auto Increment ). Иконка напротив имени атрибута означает, что этот атрибут является ключевым.

Были созданы еще две сущности: фирма (firm) и офис (office)

Атрибуты сущности firm:

· Государственный регистрационный номер фирмы (Gos_reg_number) (ключевой атрибут),

· Юридический адрес фирмы (ur_adress),

· Название фирмы (firm_name),

· Дата регистрации фирмы (reg_date)

Атрибуты сущности office:

· Адрес офиса (office_adress) (ключевой атрибут),

· Площадь офиса (office_square),

· Количество персонала (personal).

3) Формирование отношений

Связь между сущностями определяет связь между будущими таблицами. Для этого необходимо поставить флаг напротив после всех полей в разделе параметры отношений и внешних ключей (раздел Default Relation Settings / Foreign Keys Settings) во вкладке редактирования модели (Editing Options),

Между сущностями имеются следующие связи:

Собственник -> владеет -> Фирмой

Собственник может владеть несколькими фирмами, каждая фирма может иметь только одного собственника. Собственник должен иметь хотя бы одну фирму, фирма обязательно должна принадлежать кому-то. Имеем связь 1:m, класс принадлежности О:O.

Фирма -> имеет -> Офис

Фирма может иметь несколько офисов, один офис может иметь только одна фирма. Фирма может не иметь ни одного офиса, но офис обязательно должен принадлежать какой-то фирме. Имеем связь 1:m, класс принадлежности Н:О.

В программе связи задаются следующим образом.

· Связь 1:1 задается с помощью кнопки .

· Связь 1:n задается с помощью кнопки .

· Связь n:m задается с помощью кнопки .

Задать связь между сущностями можно, нажав на соответствующую кнопку и указав связываемые таблицы. После нажатия кнопки связи, надо нажать на первую таблицу, участвующую в связи, затем на другую. Внешние ключи будут автоматически добавлены в сущности соответственно связи.

Результат связывания сущностей показан на рисунке:

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

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

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

2. Кодирование

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

Для получения кода необходимо выбрать в меню File - Export - SQL Create Script. Откроется диалоговое окно, представленное на рисунке:

В основных настройках (General Settings) можно назначить экспортировать в SQL код только выделенные таблицы или экспортировать все таблицы модели, также можно задать упорядочить таблицы по внешним ключам.

- Export selected tables only - кодировать только выбранные таблицы

- Order Tables by Foreign Keys - позволяет изменить порядок кодирования

В настройках SQL кода (SQL Creates Settings) можно настроить параметры связанные с первичными ключами и внешними ключами, а также задать настройки относительно индексов.

Copy Script to Clipboard. Позволяет скопировать SQL код в буфер обмена;

Save Script to file. Позволяет сохранить SQL код в файл. Файл сохраняется в формате *.sql. Открыть его можно и в текстовом редакторе "Блокнот"

Выбрав необходимые параметры, необходимо нажать Save Script to file. Файл с SQL кодом будет сохранен на диске.

CREATE TABLE firm (

Gos_reg_number INTEGER UNSIGNED NOT NULL,

owner_FIO_owner VARCHAR(255) NOT NULL,

ur_adress VARCHAR(255) NOT NULL DEFAULT not detected,

firm_name VARCHAR(45) NOT NULL,

firm_type VARCHAR(10) NOT NULL,

reg_date DATE NOT NULL,

PRIMARY KEY(Gos_reg_number, owner_FIO_owner),

INDEX firm_FKIndex1(owner_FIO_owner)

);

CREATE TABLE office (

office_adress VARCHAR(255) NOT NULL,

firm_owner_FIO_owner VARCHAR(255) NOT NULL,

firm_Gos_reg_number INTEGER UNSIGNED NOT NULL,

office_square INTEGER UNSIGNED NOT NULL,

personal INTEGER UNSIGNED NOT NULL,

PRIMARY KEY(office_adress, firm_owner_FIO_owner, firm_Gos_reg_number),

INDEX office_FKIndex1(firm_Gos_reg_number, firm_owner_FIO_owner)

);

CREATE TABLE owner (

FIO_owner VARCHAR(255) NOT NULL,

owner_adress VARCHAR(255) NOT NULL,

owner_tel_number VARCHAR(20) NOT NULL,

owner_date_reg DATE NOT NULL,

owner_pasport VARCHAR(255) NOT NULL,

PRIMARY KEY(FIO_owner)

);

3. Работа с базой данных

DBDesigner позволяет также создавать базу данных на сервере и выполнять с ней различные операции. Это обеспечивается за счет подключения DBDesigner к MySQL серверу, созданию базы данных и установлению синхронизации между базой на сервере и визуальной моделью. Синхронизация - это сравнение визуальной модели и базы данных, находящейся на сервере. В случае внесения изменений в таблицу, изменения связей между таблицами или удаления таблиц в модели, DBDesigner внесет и соответствующие изменения в базу на сервере.

1) Установление соединения с базой данных на сервере

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

Выполните Database -> Connect to Database.

В окне Network Hosts выберите MySQL

В открывшемся списке баз данных, выберите либо существующую базу, либо создать новую, щелкнув два раза по значку "…" и задав имя новой базы.

Введите название соединения (Connection), имя пользователя (Username) и пароль (Password), если они нужны.

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

Нажмите на кнопку Connect, после чего соединение с базой будет установлено.

2) Синхронизация

Для синхронизации модели и базы на сервере необходимо:

- Выбрать в меню Database - Database Synchronisation и установить соединение с нужной базой.

- В диалоговом окне Database Synchronisation задать необходимые параметры:

o Apply changes to Database - вносить изменения модели в базу

o Don't delete exisiting Tables - при использовании этой опции таблицы, удаленные из модели, не будут удалены из базы

o Execute Standard Inserts when Creating New Tables - создавать стандартный запрос на внесение данных в таблицу

Нажать Execute, после чего база данных будет занесена на сервер. Также будет выведен отчет и сообщения об ошибках в модели, если они есть.

Проверка получившегося с помощью клиента MySQL:

4. SQL-запросы

DBDesigner также позволяет создавать запросы на языке SQL. Причем код запроса можно либо непосредственно написать, либо использовать готовые шаблоны, в которые необходимо только внести какие-то изменения.

Для работы с запросами необходимо:

- Переключиться в Query Mode, выбрав в меню Display -> Query Mode.

- В меню инструментов слева появятся кнопки, с помощью которых можно выполнить основные запросы.

- Выбрав кнопку (например, SELECT), следует щелкнуть по заголовку таблицы, а затем, не отпуская кнопку мыши, сдвинуть указатель вниз.

- В появившемся меню выбрать нужную операцию.

- Код на языке SQL появиться в нижней части экрана.

SELECT *

FROM owner

- Нажав на кнопку Execute SQL Query, в нижней части экрана можно увидеть результат запроса.

SELECT f.owner_FIO_owner, of.office_adress, of.personal

FROM owner o, firm f, office of

WHERE owner_FIO_owner=FIO_owner AND firm_Gos_reg_number=Gos_reg_number AND firm_owner_FIO_owner=owner_FIO_owner

SELECT o.FIO_owner, f.firm_name, o.owner_tel_number, o.owner_date_reg

FROM owner o, firm f

WHERE owner_FIO_owner=FIO_owner AND owner_date_reg<'31.12.2002'

ORDER BY owner_date_reg

UPDATE firm

SET reg_date='2006-09-10',

Gos_reg_number=(Gos_reg_number+100000)

WHERE firm_type='ООО'

SELECT MIN(o.owner_date_reg) AS 'самая ранняя дата регистрации'

FROM owner o

DBDesigner предоставляет различные функции для работы с запросами: сохранение кода, внесение изменений в базу и отмена внесенных изменений. Благодаря этим встроенным функциям работа с запросами существенно упрощается.

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

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

· DBDesigner “HELP”

· DBDesigner4_manual

· "Базы данных", А.Д.Хомоненко. "Корона принт", 2000 год


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.