Лабораторная работа: Проектирование и реализация информационно-поисковой системы с помощью CASE-средства DBDesigner
Название: Проектирование и реализация информационно-поисковой системы с помощью CASE-средства DBDesigner Раздел: Рефераты по информатике Тип: лабораторная работа | ||||||||||||||||||
Кафедра электронно-вычислительной аппаратуры Лабораторная работа На тему: «Проектирование и реализация информационно-поисковой системы с помощью CASE -средства DBDesigner » Москва 2009 Содержание: ЗаданиеВозможности программы DBDesignerОсновные этапы проектирования базы данныхВыполнение1. Моделирование1) Создание таблиц2) Формирование отношений2. Кодирование3. Работа с базой данных1) Установление соединения с базой данных на сервере2) Синхронизация4. SQL-запросыСписок использованных источниковВозможности программы DBDesignerCASE-средства представляют собой программные средства, поддерживающие процессы создания или сопровождения информационных систем, такие как: анализ и формулировка требований, проектирование баз данных и приложений, генерация кода, тестирование, обеспечение качества, управление конфигурацией и проектом. CASE-систему можно определить как набор CASE-средств, имеющих определенное функциональное предназначение и выполненных в рамках единого продукта. DBDesigner – это свободно распространяемая CASE-система, предназначенная для проектирования, моделирования, создания и поддержки информационных систем. Программа может использоваться для Windows 2000/XP, LinuxKDE/Gnome и MySQL. DBDesigner позволяет: · создавать модель проектируемой системы; · преобразовывать модели системы в SQL-код, который можно использовать для создания базы данных с помощью DBDesigner или другого средства; · проводить реинжиниринг – построение исходной модели программной системы путем исследования ее программных кодов. Эта функция очень удобна в случае, если необходимо разобраться уже существующей базе данных. Для проведения реинжиниринга следует выбрать в меню Database – ReversEngineering; · создавать базу данных и автоматически вносить в нее изменения, используя соединение с сервером и синхронизацию; · создавать SQL-запросы для внесения изменений и проведения операций над данными. Пользовательский интерфейс программы: Основные этапы проектирования базы данных1. Описание предметной области. Определение цели создания базы данных. 2. Определение сущностей предметной области (таблиц), которые должна содержать база данных. 3. Определение атрибутов сущностей (необходимых в таблицах полей). 4. Построение инфологической модели. Определение связей между сущностями (таблицами). Предметная область: База данных содержит информацию о картинах в картинной галерее. Инфологическая модель: Картина (Код картины , Название, Автор, Год написания, Время поступления в галерею, Тип краски); Направление (Название направления , Код направления, Страна); Период (Название периода , Код периода, Начало периода, Конец периода); Датологическая модель: Здесь составим саму реляционную модель проектируемой БД: раскроем все связи между сущностями как связи между ключами. Для этого добавим в одну из связываемых сущностей дополнительный атрибут – первичный ключ из другой сущности. Причем добавление будем осуществлять в ту из этих сущностей, где не нарушится понятие ее первичного ключа.
Картина (Код картины , Название, Автор, Год написания, Время поступления в галерею, Тип краски,Название направления, Название периода ) Направление (Название направления , Код направления, Страна); Период (Название периода , Код периода, Начало периода, Конец периода); Предметной областью разрабатываемой базы системы является информация о картинах, расположенных в галерее. Информация о картинах включает в себя информацию о картине, о направлению в искусстве, к которому она принадлежит, и принадлежности к определённому периоду. Необходимо обеспечить возможность внесения, изменения или удаления данных в базе и проведение различных поисковых операций: поиск по автору, поиск по стране. 1. МоделированиеМодель – это визуальное представление структуры данных. Модель может включать в себя следующие объекты: таблицы и отношения, которые используются обязательно, и дополнительные (например, изображения, записи) – для обеспечения лучшего «понимания» структуры модели. Для создания модели необходимо переключится в DesignMode, выбрав меню Display - Design Mode . Пользовательский интерфейс делает создание модели базы данных очень легким. DBDesigner 4 поддерживает Multible Document Interface(MDI), который позволяет открывать неограниченное число моделей одновременно. При работе, вы можете переключаться между моделями, копируя команды и объекты, чтобы обмениваться ими между моделями. 1) Создание таблицВ левой части холста находится панель инструментов. Необходимо нажать на этой панели кнопку и указать место на холсте, где будет располагаться новая сущность. Появится прямоугольное изображение пустой сущности. Чтобы задать атрибуты сущности, необходимо два раз щелкнуть на изображении сущности. В появившемся окне можно задать название сущности, а также атрибуты этой сущности. Для отображения информации о картинах была создана сущность картина . Структура сущности картина показана на рисунке: Флаг в поле NN означает, что содержимое данного поля не может быть нулевым (NotNull). Флаг в поле AI означает, что значение данного поля в каждой следующей строке увеличивается на 1 (AutoIncrement). Иконка напротив имени атрибута означает, что этот атрибут является ключевым. Были созданы еще две сущности: направление (napravlenie) и период (период) 2) Формирование отношенийСвязь между сущностями определяет связь между будущими таблицами. Для этого необходимо поставить флаг напротив после всех полей в разделе параметры отношений и внешних ключей (раздел Default Relation Settings / Foreign Keys Settings ) во вкладке редактирования модели (Editing Options ), Между сущностями имеются следующие связи : Картина –> принадлежит -> Направлению Картина -> принадлежит -> Периоду Здесь мы видим связь 1:M, так как одному периоду может соответствовать много картин, а одной картине соответствует только один период. Аналогично с направлением. В программе связи задаются следующим образом. Связь 1:1 задается с помощью кнопки . Связь 1:M задается с помощью кнопки . Связь M: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. Открыть его можно и в текстовом редакторе «Блокнот» Выбрав необходимые параметры, необходимо нажать SaveScripttofile. Файл с SQL кодом будет сохранен на диске. CREATETABLENapravlenie ( naprname VARCHAR(255) NOT NULL, naprID INTEGER UNSIGNED NULL, country VARCHAR(45) NULL, PRIMARY KEY (naprname) CREATE TABLE Period ( pername VARCHAR(45) NOT NULL, perID INTEGER UNSIGNED NULL, Begin CHAR NULL, End_ CHAR NULL, PRIMARY KEY(pername) CREATE TABLE Picture ( PicID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, Period_pername VARCHAR(45) NOT NULL, Napravlenie_naprname VARCHAR(255) NOT NULL, name VARCHAR(255) NULL, author VARCHAR(255) NULL, year_2 INTEGER UNSIGNED NULL, arrdate DATE NULL, paint VARCHAR(255) NULL, naprname VARCHAR(255) NULL, pername VARCHAR(255) NULL, PRIMARY KEY(PicID), INDEX Картина_FKIndex1(Napravlenie_naprname), INDEX Картина_FKIndex2(Period_pername) 3. Работа с базой данныхDBDesigner позволяет также создавать базу данных на сервере и выполнять с ней различные операции. Это обеспечивается за счет подключения DBDesigner к MySQL серверу, созданию базы данных и установлению синхронизации между базой на сервере и визуальной моделью. Синхронизация – это сравнение визуальной модели и базы данных, находящейся на сервере. В случае внесения изменений в таблицу, изменения связей между таблицами или удаления таблиц в модели, DBDesigner внесет и соответствующие изменения в базу на сервере. 1) Установление соединения с базой данных на сервере Для занесения базы данных, соответствующей полученной модели, на сервер MySQL, необходимо установить соединение с сервером. - ВыполнитеDatabase –> Connect to Database . - ВокнеNetwork Hosts выберите MySQL - В открывшемся списке баз данных, выберите либо существующую базу, либо создать новую, щелкнув два раза по значку «…» и задав имя новой базы. - Введите название соединения (Connection ), имя пользователя (Username ) и пароль (Password ), если они нужны. - В центральном окне находится список серверов баз данных, с которыми велась работа и для которых указаны IP-адрес, тип, размещение и название. Так как в данной работе предполагается, что сервер MySQL находиться на локальном компьютере, то все необходимые параметры будут установлены автоматически. Однако при использовании сети, необходимо знать IP-адрес сервера и иметь доступ на работу. - Нажмите на кнопку Connect , после чего соединение с базой будет установлено. Для синхронизации модели и базы на сервере необходимо: - Выбрать в меню Database - Database Synchronisation и установить соединение с нужной базой. - В диалоговом окне DatabaseSynchronisation задать необходимые параметры: 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. Причем код запроса можно либо непосредственно написать, либо использовать готовые шаблоны, в которые необходимо только внести какие-то изменения. Сперва заполним созданную базу. Щёлкнув по таблице, можно записывать значения в столбцы. Для работы с запросами необходимо: - Переключиться в QueryMode, выбрав в меню Display -> Query Mode . - В меню инструментов слева появятся кнопки, с помощью которых можно выполнить основные запросы. - Выбрав кнопку (например, SELECT), следует щелкнуть по заголовку таблицы, а затем, не отпуская кнопку мыши, сдвинуть указатель вниз. - В появившемся меню выбрать нужную операцию. - Код на языке SQL появиться в нижней части экрана. SELECT * FROM Picture; - Нажав на кнопку Execute SQL Query , в нижней части экрана можно увидеть результат запроса. SELECT Picture.PicID, Picture.name, Picture.year_2, Period.pername, Napravlenie.* FROM (Period INNER JOIN Picture ON Period.pername=Picture.Period_pername) INNER JOIN Napravlenie ON Picture. Napravlenie_naprname=Napravlenie.naprname WHERE (Picture.year_2>1600 OR Period.end_ LIKE "*X") AND (Napravlenie.country IN ("Италия","Франция")) ORDER BY Picture.arrdate DESC; Update Picture SET paint='акварель' , year_2=(year_2+1) WHERE PicID=2003;Select PicID, name, author, year_2, paintfrom Picture; SELECT MIN(arrdate) AS 'перваякартинамузея'FROM Picture; DBDesigner предоставляет различные функции для работы с запросами: сохранение кода, внесение изменений в базу и отмена внесенных изменений. Благодаря этим встроенным функциям работа с запросами существенно упрощается. Кроме того, в программе есть очень удобное средство для внесения данных в таблицу. Щелкнув правой кнопкой мыши по таблице и выбрав в меню EditTableData, можно заносить данные в таблицу или изменять их без использования языка SQL. Список использованных источников1. DBDesigner “HELP” 2. DBDesigner4_manual 3. «Базы данных», А.Д. Хомоненко. «Корона принт», 2000 год |