Смекни!
smekni.com

База данных Кафедра (стр. 2 из 7)

В настоящее время на практике количество CASE-средств, поддерживающих объектно-ориентированный подход, невелико по сравнению с поддерживающими структурный подход. В том числе, диаграммы, отражающие специфику объектно-ориентированного подхода (диаграммы классов, объектов и т.д.), гораздо менее наглядны и плохо понимаемы непрофессионалами. Примерами объектно-ориентированных CASE-средств являются: Rational Rose фирмы Rational Software и Paradigm Plus фирмы Computer Associates, предназначенные для автоматизации этапов анализа и проектирования ПО.

Современные CASE-средства, поддерживающих структурный подход, охватывают обширную область поддержки многочисленных технологий проектирования ИС: от простых средств анализа и документирования до полномасштабных средств автоматизации, покрывающих весь жизненный цикл ПО. На сегодняшний день российский рынок программного обеспечения располагает следующими наиболее развитыми CASE-средствами: Vantage Team Builder (Westmount I-CASE); Designer/2000; Silverrun; ERwin+BPwin; S-Designor; CASE.Аналитик.

ERwin — современное средство проектирования баз данных. Отличительной чертой ERwin/ERX является высокая степень обеспечения согласованного взаимодействия между средствами создания баз данных и средствами разработки приложений. ERwin поддерживает все наиболее популярные реляционные СУБД, включая Oracle; Sybase; Informix; Microsoft SQL Server; FoxPro; InterBase; Paradox; Access и др. Одна и та же модель может быть использована для создания нескольких баз данных или для переноса приложения с платформы одной СУБД на другую. ERwin можно использовать совместно со многими популярными средствами разработки приложений: Delphi, PowerBuilder, Visual Basic, Oracle Designer/2000 и др. [6]

Основные характеристики:

· поддержка стандартной нотации IDEF1X для ER диаграмм моделей данных, нотации IE и специальной нотации, предназначенной для проектирования хранилищ данных – DIMENSIONAL;

  • возможность импорта/экспорта данных из BРwin, Oracle Designer;
  • поддержка триггеров, хранимых процедур и шаблонов;
  • развитые средства проверки корректности моделей данных;
  • автоматическая генерация SQL DDL для создания баз данных;

· глубокая интеграция с продуктами Oracle, Sybase, Centura, Microsoft на базе единого репозитория и эффективного обмена проектами; импорт/экспорт с Rational Rose;

· автоматическая генерация экранных форм приложений для PowerBuilder, Delphi, Visual Basic, созданных на основе спроектированной модели данных.

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

Для создания ER – диаграммы в проекте используется программное средство ERwin.

В базе данных использованы домены. Домен - это потенциальное множество значений простого типа данных, он имеет сходство с подтипом данных в некоторых языках программирования. Домен определяется двумя элементами - типом данных и логическим выражением, которое применяется к данным. Если результат этого выражения равен значению «истина», то экземпляр данных принадлежит домену [6].


Таблица 1- Домены, используемые в диаграмме.

Логическое имя домена Физическое имя домена Родительский домен
examen t_examen Number
itog t_itog Number
kol_vo_kreditov t_ko_lvo_kreditov Number
lc1 t_lc1 Number
lc2 t_lc2 Number
pr1 t_pr1 Number
pr2 t_pr2 Number
srs1 t_srs1 Number
srs2 t_srs2 Number
Disciplina_s t_Disciplina_s String
Disciplina_p t_Disciplina_p String
Specialnost_s t_Specialnost_s String
Specialnost_p t_Specialnost_p String
Doljnost t_Doljnost String
FIO t_FIO String
gruppa t_gruppa String
Semester T_semestr number

В диаграмму входят такие сущности:

Сущность Student включает:

o FIO;

o Gruppa.

Сущность Gruppa включает:

o Gruppa;

o God postuplenia;

o Edvaizer.

Сущность Specialnost включает:

o Shifr_specialnosti;

o Specialnost_p;

o Specialnost_s;

o God_vvedenia.

Сущность Disciplina включает:

o Kod_disciplina;

o Disciplina_p;

o Disciplina_s.

Сущность Prepodavatel включает:

o Kod_disciplina;

o Shifr_specialnost;

o Semester;

o Kol_vo_kreditov.

СущностьVedomost включает:

o Kod_prepod;

o Kod_disciplina;

o Shifr_specialnost;

o Kod_student;

o Lc1;

o Lc2;

o Pr1;

o Pr2;

o Srs1;

o Srs2;

o Examen;

o Itog.

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

На логическом уровне данные представляются так, как они выглядят в реальном мире. Объектами логического уровня являются сущности и атрибуты. Модель логического уровня является универсальной и не связана с конкретной базой данных [6.

Затем генерируем SQL код первоначально установив программу выбрав Server/Target Interbase, затем выбрав Server Tasks/Schema Generation, установив необходимые параметры нажимаем кнопку Preview для просмотра сгенерированного SQL кода. Итак, получив SQL код, мы можем перейти к следующему этапу проектирования.

Рисунок 1- Диаграмма на физическом уровне

Рисунок 2 - Диаграмма на логическом уровне.

2.3. Создание базы данных в INTERBASE

2.3.1. INTERBASE и область его применения

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

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

  • Поиск в базе данных по заданным условиям;
  • Сравнение, сортировку и представление данных в табличном виде;
  • Изменение хранимых данных;
  • Добавление новых данных в базу;
  • Удаление данных из базы данных;
  • Создание новых базы данных и структур данных;
  • Выполнение программного кода на сервере;
  • Передачу сообщения другим клиентам, подключенным в данный момент к серверу.

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

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

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

Отличительными качествами InterBase являются:

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

· Поддержка стандарта SQL-92, обеспечивающая переносимость приложений.

· Относительно низкая стоимость продукта.

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

Все это делает InterBase прекрасным выбором для реализации корпоративных систем малого и среднего масштаба (с количеством пользователей в несколько десятков). При реализации очень крупных проектов (с сотнями или более пользователей) стоит, наверное, рассмотреть более мощные серверы – типа Oracle или Informix [1].

2.3.2. Уровни реализации языка SQL

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

1. Интерактивный или автономный SQL(ISQL) дает возможность пользователям непосредственно извлекать информацию из базы данных или записывать ее в базу данных. Этот уровень доступен посредством соответствующих утилит или специальных стандартных средств для работы с базами данных. В InterBase это реализуется такими утилитами, как Isql.exe и Wisql32.exe. С их помощью информация может быть загружена в базу данных или извлечена из нее и выведена на экран, печать или файл.

2. Статический SQL (SQL)- фиксированный (исполнимый), т.е. заранее подготовленный и записанный , а не формируемый в процессе выполнения программы SQL код, обычно используемый в приложениях. Существует две версии статического SQL. Встроенный или внедренный SQL – это код SQL, включенный в исходный код программы, написанной на том или ином алгоритмическом языке. Используемый язык при этом называют базовым. InterBase поддерживает внедренный SQL. Другое использование статического SQL- модульный язык. В этом случае модули SQL присоединяются к приложению на этапе компоновки.

3. Динамический SQL (DSQL) – код SQL, генерируемый приложением во время его выполнения. Динамический SQL заменяет статический в тех случаях, когда необходимый код не может быть определен во время написания приложения, так как он сам зависит от действий пользователя во время выполнения приложения.

В InterBase используются все 3 уровня реализации SQL. Необходимо помнить, что на разных уровнях доступны не все команды языка. Кроме того, синтаксис команд разных уровней может отличаться. При описании синтаксиса соответствующих команд оговаривается уровень реализации, на который ориентирован это синтаксис. В большинстве случаев, правда этот синтаксис является единым [8].