Администрирование СУБД с помощью утилиты IBExpert. Установка соединения с СУБД

Автор: Пользователь скрыл имя, 09 Марта 2013 в 20:26, лабораторная работа

Краткое описание

Ознакомиться с СУБД FireBird и программой IBExpert . Научиться устанавливать соединение с СУБД из программных систем, создать базу данных и производить элементарные действия с ней с удаленного компьютера.
2 Задание
1) Создать новую базу данных с помощью утилиты IBExpert. Выполнить регистрацию базы данных. Создать таблицу в соответствии с вариантом задания и заполнить её данными, используя интерфейсные средства IBExpert.
2) Разработать приложение средствами среды Delphi для установки соединения с указанной базой данных. Использовать компоненты FIBPlus.
3) Исследовать работу механизма транзакции с помощью разработанного приложения и утилиты IBExpert.

Файлы: 1 файл

Лабораторная работа №1.docx

— 299.02 Кб (Скачать)

 

Министерство образования  Российской Федерации

Пензенский государственный  университет

Факультет вычислительной техники

 

 

Кафедра «Информационно-вычислительные системы»

Дисциплина «Базы данных»

 

 

 

Отчет по лабораторной работе №1

«Администрирование СУБД с помощью утилиты IBExpert. Установка соединения с СУБД»

 

 

 

 

Выполнила: ст-ка гр.11ЦВЭУ1

______________ Винокурова Т.А.

Принял: к.т.н., доцент

_________________ Долгова И.А.

 

 

2012

1 Цель работы

Ознакомиться с СУБД FireBird и программой IBExpert . Научиться устанавливать соединение с СУБД из программных  систем, создать базу данных и производить элементарные действия с ней с удаленного компьютера.

 

2 Задание

1) Создать новую базу данных с помощью утилиты IBExpert. Выполнить регистрацию базы данных. Создать таблицу в соответствии с вариантом задания и заполнить её данными, используя интерфейсные средства IBExpert.

2) Разработать приложение  средствами среды Delphi для установки соединения с указанной базой данных. Использовать компоненты FIBPlus.

3) Исследовать работу механизма транзакции с помощью разработанного приложения и утилиты IBExpert.

Для варианта 2 исходными  данными являются поля таблицы: номер  паспорта, Ф.И.О., адрес.

 

3 Выполнение работы

 

3.1 Описание базы данных

В базе данных паспортного  стола необходимо хранить сведения о паспортах, которые можно представить  отношением

ПАСПОРТА (НОМЕР, НОМЕР_ПАСПОРТА, Ф.И.О., АДРЕС)

Для разработки базы данных была построена ER-диаграмма (см. рисунок 1).

PASPORTA

NOMER

NOMER_PASPORTA

FIO

ADRES


Рисунок 1 – ER-диаграмма

Физическое проектирование БД проводилось с использованием программного средства IBExpert.

В качестве СУБД в соответствии с техническим заданием была выбрана  СУБД FireBird.

Физическая модель базы данных содержит одну сущность («PASPORTA»).

Поля сущности «PASPORTA» приведены в таблице 1.

Таблица 1 – Сущность «PASPORTA»

Номер поля

Название поля

Назначение поля

Ключевые параметры

Тип поля

1

NOMER

Номер

PK

Integer

2

NOMER_PASPORTA

Номер паспорта

 

Integer

3

FIO

Ф.И.О.

 

Varchar(40)

4

ADRES

Адрес

 

Varchar(60)


 

3.2 Создание базы данных

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

Путь создаваемой базы данных: D:\data\pasporta.fdb.

Файл клиентской библиотеки находится С:\Program Files\Firebird\Firebird 2.5\bin\fbclient.dll.

Диалект БД: диалект 3.

Имя пользователя: TEAM001.

Пароль: slave001.

Размер страницы БД: 16384.

Рисунок 2 – Диалоговое окно «Создание базы данных»

База данных зарегистрирована под именем «Справочная паспортного  стола». При этом использован сервер Firebird версии 2.5. Диалоговое окно с данными, необходимыми для регистрации базы данных, представлено на рисунке 3.

Рисунок 3 – Диалоговое окно «Регистрация базы данных»

После создания и регистрации  базы данных создается таблица.

Для создания новой таблицы необходимо вызвать в окне «Database Explorer» контекстное меню правой кнопкой мыши в разделе «Таблицы» и выбрать пункт «Новая таблица». В верхней строке окна необходимо ввести имя таблицы: «PASP». Далее нужно создать поля таблицы с указанием имени и типа.

Таблица «PASP» имеет следующие поля:

• «NOMER» (PK) типа Integer для обозначения порядкового номера; 
• «NOMER_PASPORTA» типа Integer для обозначения номера паспорта; 
• «FIO» типа VarChar (40) для обозначения ФИО владельца паспорта; 
• «ADRES» типа VarChar(60) для обозначения адреса владельца паспорта.

Поля таблицы «PASP» представлены на рисунке 4.

Рисунок 4 – Поля таблицы  «PASP»

После завершения ввода полей  необходимо нажать кнопку «Компиляция».

Для ключевого поля созданной  таблицы установим генератор  и триггер. Для установки генератора и триггера при создании поля перейдем на вкладку «Автоинкремент» и выполним создание генератора (рисунок 5) и триггера (рисунок 6).

Рисунок 5 – Создание генератора

Рисунок 6 – Создание триггера

Ввод данных необходимо выполнить  на вкладке «Данные» окна «Таблица». Данные таблицы «PASP» представлены на рисунке 7.

Рисунок 7 – Данные таблицы «PASP»

3.3 Описание логической  структуры 

Программа состоит из одного модуля. Приложение не требует установки  на компьютер пользователя. При запуске  программы открывается главная  форма программы. Логическая структура  программы представлена на рисунке 8.

 

 

 

 

 



 


 

Рисунок 8 – Логическая структура

Модуль main002 реализует функционирование главной формы программы, отображающей таблицу «Паспортный стол».

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

3.4 Создание главной формы  приложения

На главной форме находятся  следующие объекты:

• DBGrid1 класса TDBGrid – таблица, используемая для отображения таблицы; 
        • Label1 класса TLabel – для отображения текстовых сообщений.

Главная форма приложения представлена на рисунке 9.

Рисунок 9 – Главная форма

3.5 Создание модуля данных  для приложения

На модуле данных приложения необходимо поместить следующие  компоненты (представлены на рисунке 10):

• dbPasp класса TpFIBDatabase осуществляет связь с СУБД Firebird. Значения свойств этого компонента представлены на рисунке 11. При вводе свойств с помощью редактора Connection Properties необходимо кликнуть правой кнопкой мыши по компоненту dbPasp и из контекстного меню выбрать команду Database Editor. Значения свойств представлены на рисунке 12; 
        • ReadTransaction, WriteTransaction класса TpFIBTransaction предназначены для управления транзакциями приложения. Значения свойств этих компонентов представлены на рисунке 13 и рисунке 14; 
         • dstPasp класса TpFIBDataSet предназначен для передачи запросов от клиентского приложения к серверу базы данных. Значения свойств этого компонента представлены на рисунке 15. Значения, заданные  в окне генератора SQL, представлены на рисунке 16; 
         • dsPasp класса TDataSource выполняет связь источника данных с (dstPasp) с визуальными компонентами формы для отображения данных. Значения свойств этого компонента представлены на рисунке 17.

Рисунок 10 – Модуль DataModule1

Рисунок 11 – Свойства компонента dbPasp

Рисунок 12 – Свойства для подключения к БД компонента dbPasp

 

Рисунок 13 – Свойства компонента ReadTransaction

 

Рисунок 14 – Свойства компонента WriteTransaction


 

Рисунок 15 – Свойства компонента dstPasp

Рисунок 16 – Окно редактора SQL

Рисунок 17 – Свойства компонента dsPasp

3.6 Создание модуля отображения данных

Для создания этого модуля необходимо связать имена полей  базы данных «PASPORTA» и имена столбцов в таблице «Справочная паспортного стола». Для этого необходимо установить свойство DataSource компонента DBGrid равным DataModule1.dsPasp, кликнуть правой кнопкой на компоненте и выбрать команду Columns Editor. В окне это редактора кликнуть по кнопке Add New. Нужно установить его свойства:

Для первого столбца: 
FieldName = NOMER 
Alignment = taCenter

Title 
Caption = номер 
Alignment = taCenter

Для второго столбца: 
FieldName = FIO

Title 
Caption = Ф.И.О. 
Alignment = taCenter

Для третьего столбца: 
FieldName = NOMER_PASPORTA

Title 
Caption = номер паспорта 
Alignment = taCenter

Для четвертого столбца: 
FieldName = ADRES

Title 
Caption = адрес 
Alignment = taCenter

3.7 Описание разработанной программы

Текст модулей разработанной  программы prSimpl002 приведен в приложении А.

При запуске приложения на экране появляется главная форма (рисунок  18).

Рисунок 18 – Главная форма  приложения

4 Ответы на контрольные  вопросы

1. Дайте определение СУБД.

Система управления базами данных (СУБД) – это программное  обеспечение, которое управляет доступом к базе данных.

СУБД – это совокупность языковых и программных средств, с помощью которых пользователи могут определять, создавать и поддерживать базу данных, а также осуществлять к ней контролируемый доступ.

2. Дайте определение сервера и клиента как ресурса компьютерной сети.

Сервер – компьютер, выделенный из группы персональных компьютеров (или  рабочих станций), на котором хранится база данных, работает программа СУБД, обрабатывающая запросы пользователей  и возвращающая им наборы записей.

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

3. Назовите существующие  модели данных.

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

Для трехуровневой архитектуры  существуют следующие три связанные  модели данных (объектные модели):

• внешняя модель данных (модель предметной области) отображает представления каждого типа пользователей организации. Используется при работе с CASE – средством при разработке функциональной модели, модели потоков данных, для создания внешних объектов, процессов, потоков, накопителей и описания структур данных;

• концептуальная модель данных отображает логическое (или обобщенное) представление о данных, не зависимое от выбранной СУБД. Создается с помощью CASE – средства ER – модель. Содержит сущности, связи, атрибуты;

• внутренняя модель данных отображает концептуальную схему для  конкретной СУБД. Разрабатывается с помощью CASE – средства. Логическая модель, для конкретной СУБД – реляционная модель СУБД. Содержит домены, типы атрибутов.

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

Существуют три основных типа записей, определяющие три типа моделей:

• реляционная модель данных (relational data model) – база данных, с точки зрения пользователя, выглядит как набор таблиц;

• сетевая модель данных (network data model) – данные представляются в виде коллекций записей, а связи – в виде наборов;

• иерархическая модель данных (hierarchical data model) – подтип сетевой модели, данные представляются как коллекция записей, а связи – как наборы, но узел может иметь только одного родителя.

4. Объясните отличие архитектуры SuperServer от Classic.

СУБД Firebird выпускается для нескольких платформ (Win32, Linux, Solaris, FreeBSD, Darwin) в двух архитектурах – SuperServer и Classic. Основное различие между ними состоит в том, что Classic создает параллельный процесс для каждого присоединяемого пользователя, а SuperServer состоит из одного процесса, который обрабатывает запросы клиентов в разных нитях (threads) этого же процесса. Архитектура Classic считается более надежной, а SuperServer более производительной.

5. Что такое диалект  SQL?

Диалект SQL – универсальный язык, применяемый для создания, модификации и управления данными в реляционных базах данных.

Диалект 1 – базы данных InterBase 4.х или 5.х, “импортированные” в Firebird посредством backup в 4.х/5.х и restore. Не содержат никаких отличий от 5.х.

Диалект 2 – предназначен для проверки возможности перевода баз данных диалекта 1 и в диалект 3.

Диалект 3 – “родной” формат Firebird, поддерживающий типы данных BIGINT, DATE, TIME, TIMESTAMP и прочие расширения.

Диалект 1 отличается от версии 5.х поддержкой следующих ключевых слов: TIMESTAMP, TIME, EXTRACT, YEAR, MONTH, DAY, WEEKDAY, HOUR, MINUTE, SECONDS, CURRENT_DATE, CURREN_TIME, CURRENT_TIMESTAMP. Использование этих ключевых слов в качестве идентификаторов полей, таблиц и других объектов будет приводить к ошибке.

Кроме этого в диалекте 3 не поддерживается автоматическая конвертация  типов в выражениях. Например, если раньше в SQL можно было написать 1+’3’ и получить ответ 4, то в диалекте 3 будет выдано сообщение об ошибке.

6. Какая информация указывается  при регистрировании базы данных?

При регистрации базы данных указывается тип сервера (например, удаленный), имя сервера (например, sqledu02), протокол (TCP/IP), версия сервера (Firebird 2.5), файл базы данных, описание базы данных, имя пользователя, пароль, роль, кодировка, файл клиентской библиотеки, дополнительные параметры коннекта и др.

7. Объясните порядок установки  соединения с СУБД.

На модуле данных DataModule приложения необходимо поместить следующие компоненты FIBDatabase, FIBTransaction (два), FIBDataSet с вкладки FIBPlus и компонент DataSource с вкладки DataAccess. Компонент FIBDatabase осуществляет связь с СУБД FireBird и предоставляет довольно удобный редактор для установления соединения с сервером баз данных. Компонент FIBTransaction предназначен для управления транзакциями приложения. Компонент FIBTransaction предназначен для передачи запросов от клиентского приложения к серверу баз данных. Компонент DataSource выполняет связь источника данных с визуальными компонентами формы для отображения данных.

Информация о работе Администрирование СУБД с помощью утилиты IBExpert. Установка соединения с СУБД