Программа методичні вказівки І індивідуальні завдання до вивчення дисципліни «системи управління базами даних» для студентів за галузю знань 0201



Сторінка6/9
Дата конвертації27.04.2016
Розмір1.08 Mb.
1   2   3   4   5   6   7   8   9




  • Шаг 8. С целью отображения названия полей на русском (украинском) языке заголовки полей необходимо русифицировать. Для этого достаточно выбрать необходимое поле в списке редактора полей и заменить значение Caption в списке свойства Title (рис. 6.5.). Цвет заголовка и положение надписей определяются свойствами Color и Aligment.



Рис. 6.5. Русификация названий полей


  • Шаг 9. Для сетки, отображающей расписание занятий, самостоятельно скройте поля NUM, DAY и NCODE и выполните русификацию видимых заголовков полей.

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

Заключительным этапом разработки пользовательского приложения «Расписание занятий» является его эргономический дизайн рис. 6.6.

Внешний вид пользовательского приложения «Расписание занятий»


Рис. 6.6.




Література


  1. Баженов В. А., Венгерський П. С., Горлач В. М., Левченко О. М., та ін. Інформатика. Комп’ютерна техніка. Комп’ютерні технології: Підручник. – К.: Каравела, 2003. – 464с.

  2. Береза А. М. Основи створення інформаційних систем: Навч. посібник. – К.:КНЕУ,1998.–140с.

  3. Дейт К.Дж. Введение в системи баз даних – К.; М.; СПб.: “Вильямс”, 1999. – 848с.

  4. Економічна інформатика. Підручник для вузів. Під ред. проф. В.В. Евдокимова. – СПб.: Питер, 1997. – 592с.

  5. Куправа Т. А. Самоучитель Access 97/2000. – С.Пб: Наука и Техника, 2001. – 144с.

  6. Попель Г., Гоулстмайн Б. Информационная технология – миллионные прибыли: Пер. с англ. / Науч. ред. и авт. предисл. В. В. Симанов. – М.: Экономика, 1990. – 238 с.

  7. Праг К.Н., Ирвин М.Р. Біблія користувача Access для Windows 98 – К.: Діалектика, 1999. – 576с.

  8. Хансен Г., Хансен Дж. Базы даних: розробка і керування – М.: БІНОМ, 1999. – 704с.

  9. Microsoft Access 97: наглядно и конкретно / перевод с английского. – М.: Издательский отдел «Русская редакция» TOO “Channel Trading Ltd.”, 1997. – 256с.



зміст




Загальні завдання до семестрової роботи …………………………

3


Методичні вказівки та приклад виконання семестрового завдання ………………………………………………………………….

3

Приклад постановки задачі …………………………………………...

4

Опис вхідних і вихідних документів ………………………………….

4







Вказівки та приклад виконання завдання 1 ……………………...

6

Побудова концептуальної моделі та опис інформаційних об’єктів


предметної області …………………………………………………….

6

Реляційна модель ………………………………………………………


7




Вказівки та приклад виконання завдання 2 ……………………...

9

Основи розробки бази даних ………………………………………….

9

Кроки електронного створення бд у середовищі ms access ……

9

Приклад заповнення таблиці учбової бази даних …………………...

12







Вказівки до виконання завдання 3 ………………………………...

12

Обробка таблиць інформаційної системи, створення запитів ……...

12

Алгоритм реалізації запитів та звітів …………………………………

13







Варіанти семестрових завдань ……………………………………...

15

Література …………………………………………………………….

37


ЛЕКЦИОННЫЙ МАТЕРИАЛ

БАЗЫ ДАННЫХ


Лекция 1
1. Основные понятия

2. Концепции построения реляционных баз данных

3. Стадии проектирования реляционных баз данных
Базы данных являются одной из основных составляющих информационных технологий предприятий. В настоящее время без применения баз данных трудно представить работу любого современного предприятия. Настоящая глава посвящена общим вопросам, связанным с проектированием баз данных предприятий.
1. Основные понятия

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

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

Для создания реляционных баз данных в среде Delphi используется ядро баз данных Borland Database Engine.

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

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

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


  • Обеспечить необходимый пользователю информационный объем и содержание данных.

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

  • Гарантировать непротиворечивость данных.

  • Минимизировать избыточность данных.

  • Обеспечить максимальную производительность доступа к данным.

Перед проектированием базы необходимо провести комплекс исследований связанный с определением объема и вида хранимой информации, обеспечивающей возможность получения необходимой дополнительной (расчетной) информации из хранимой информации. Также необходимо:

  • Проанализировать объекты и смоделировать их в базе данных.

  • Сформировать из объектов сущности определить их характеристики.

  • В соответствии сущностям разработать структуры таблиц и описать их поля.

  • Определить атрибуты, которые будут являться идентификаторами объектов.

  • Установить связи между объектами и выполнить нормализацию объектов.

  • Выработать принципы управления данными, которые будут определять, и поддерживать целостность данных.

  • Обеспечивать надежность системы управления базой данных.

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

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


2. Концепции построения реляционных баз данных

Реляционная теория определяет несколько базовых понятий. Одним из основных понятий является понятие отношения. Математически отношение определяется следующим образом. Пусть заданы n множеств D1, D2, ..., Dn. Тогда R есть отношение этих множеств, при условии, если R есть множество упорядоченных наборов вида: d1, d2, ..., dn, где d1 - элемент из D1, d2 - элемент из D2, ..., dn – элемент из Dn. При этом наборы вида: d1, d2, ..., dn называются кортежами, а множества D1, D2 ,..., Dn - доменами. Каждый кортеж состоит из элементов, выбираемых из своих доменов. Эти элементы называются атрибутами, а их значения - значениями атрибутов. Графическое представление отношений показано на рисунке 1.





Рис. 1. Графическое представление отношений

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



  • отношение, таблица, файл (для локальных баз данных);

  • кортеж, строка, запись;

  • атрибут, столбец, поле.

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

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

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

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

Индексирование играет важную роль при восстановлении связей в базе данных. После удаления отдельных записей из таблицы, содержащих blob поля, само отношение становится не упорядоченным, потому, что в нем остаются не удаленные строки. Напротив индекс (индексный файл), остается упорядоченным, так как в нем удаляется соответствующая запись, и как следствие ссылка на удаленный кортеж исчезает, и целостность связей сохраняется. Для очистки базы данных от ненужной информации используется механизм переиндексирования, с помощью которого автоматически удаляется ненужные кортежи.


  • Для поддержания ссылочной целостности данных во многих СУБД имеется механизм внешних ключей. Смысл этого механизма состоит в том, что некоему атрибуту (или группе атрибутов) одного отношения назначается ссылка на первичный ключ другого отношения. В результате чего устанавливаются связи подчиненности между этими отношениями. При этом отношение, на первичный ключ которого ссылается внешний ключ другого отношения, называется master-отношением, или главным отношением, а отношение, от которого исходит ссылка, называется detail-отношением, или подчиненным отношением. После назначения такой ссылки СУБД имеет возможность автоматически отслеживать нарушения связей между отношениями, а именно:

  • если выполняется попытка вставить в подчиненную таблицу запись, для несуществующего внешнего ключа в главной таблице, СУБД сгенерирует ошибку;

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

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

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

  • если в главной таблице удаляется запись, то в подчиненной таблице должны быть удалены все записи, ссылающиеся на удаляемую запись;


3. Стадии проектирования реляционных баз данных

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



Вторая стадия проектирования включает в себя анализ объектов реального мира, которые необходимо смоделировать в базе данных. На этой стадии разрабатывается информационная структура базы данных.

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

На четвертой стадии проектирования определяются атрибуты, которые уникальным образом идентифицируют каждый объект. Для того чтобы обеспечить единичный доступ к строке таблицы необходимо определить первичный ключ для каждого из отношений. Если нет возможности идентифицировать кортеж с помощью одного атрибута, то первичный ключ может быть составным, т.е. содержать несколько атрибутов. Первичный ключ гарантирует, что в таблице не будет содержаться двух и более одинаковых строк. Во многих СУБД имеется возможность помимо первичного ключа определять еще ряд уникальных ключей. Отличие уникального ключа от первичного ключа состоит в том, что уникальный ключ не является главным идентификатором записи и на него не может ссылаться внешний ключ другой таблицы. Его главная задача состоит в гарантировании уникальности значения поля.



Пятая стадия проектирования предполагает разработку методов, которые должны определять и поддерживать целостность данных. В СУБД архитектуры клиент/сервер данные методы заведомо определены и поддерживаются автоматически сервером баз данных. В локальных СУБД указанные методы должна быть реализованы в пользовательском приложении.

Шестая стадия проектирования базы данных состоит в установлении связи между объектами (таблицами и столбцами) и исключении избыточности данных – нормализации таблиц. Каждый вид связей должен быть смоделирован в базе данных. Существуют три основных вида связей:

  • связь “один к одному”;

  • связь “один ко многим”;

  • связь “многие ко многим”.

Связь “один к одному” представляет собой простейший вид связи данных. Данный вид характеризуется тем, что первичный ключ главной таблицы является в то же время внешним ключом, ссылающимся на первичный ключ другой таблицы. Такую связь удобно устанавливать тогда, когда нет необходимости держать разные по типу или другим критериям данные в одной таблице. Например, можно выделить данные с общим описанием изделия в отдельную таблицу и установить связь “один к одному” с таблицей, содержащей описание элементов изделия.

Связь “один ко многим” отражает реальную взаимосвязь сущностей в предметной области. Эта связь реализуется уже описанной парой “внешний ключ -> первичный ключ”, т.е. когда определен внешний ключ главной таблицы, который ссылается на первичный ключ других таблиц. Именно эта связь описывает широко распространенный механизм классификаторов. Для установки такой связи существует справочная таблица, содержащая названия, имена и другую информацию, и определенные коды. В такой схеме первичным ключом является код. В главной таблице, содержащей базовую информацию, определяется внешний ключ, который ссылается на первичный ключ классификатора. После этого в нее заносится не название из классификатора, а код. Такая система становится устойчивой от изменения названий в классификаторах. Существуют способы быстрой подмены в отображаемой таблице кодов на их названия, как на уровне сервера, так и на уровне пользовательского приложения.

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

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



  • данные легко обновлять или удалять;

  • исключается возможность рассогласования копий данных;

  • уменьшается возможность введения некорректных данных.

Процесс нормализации заключается в приведении таблиц к нормальным формам. Существует несколько видов нормальных форм: первая нормальная форма (1НФ), вторая нормальная форма (2НФ), третья нормальная форма (3НФ), нормальная форма Бойса - Кодда (НФБК), четвертая нормальная форма (4НФ), пятая нормальная форма (5НФ). С практической точки зрения, достаточно приведения таблиц к трем первым формам. Приведение к первой нормальной форме заключается в устранении повторяющихся групп. На стадии приведения ко второй нормальной форме производится удаление частично зависимых атрибутов. Удаление транзитивно зависимых атрибутов выполняется при приведении к третьей нормальной форме.

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


Тема 2 Поддержка баз данных в среде delphi
Разработка приложений баз данных является одной из ключевых функций среды Delphi. Помимо большого набора компонентов доступа и управления данными среда Delphi содержит собственный процессор управления базами данных Borland Database Engine, СУБД InterBase, а также необходимые в работе утилиты, позволяющие быстро разрабатывать базы данных различных структур и конфигураций. В настоящей главе рассматриваются основные инструменты, предназначенные для проектирования баз данных.
2.1 Открытая архитектура средств поддержки баз данных

Поддержка разработки приложений баз данных в среде Delphi осуществляется при помощи:



  • DBE (Borland Database Engine).

  • СУБД InterBase (версии: 5.0 - 5.6).

  • Утилиты Database Explorer.

  • Утилиты Database Desktop.

  • Мастера форм баз данных.

  • Компонентов баз данных.

Среда Delphi предлагает открытую архитектуру средств поддержки баз данных (рис.2).

Основным связующим звеном между приложением и базой данных является компонент TDataSet. Данный компонент может работать с базой данных любого типа.

Приложения баз данных строятся на основе компонентов доступа к базам данных и компонентов управления базами данных. Эти компоненты могут быть связаны с локальными базами данных следующих форматов: dBase, Paradox, ASCII, FoxPro и Access. Кроме указанных форматов баз данных DBE используется для доступа к локальным и удаленным SQL серверам.

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

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

Рис.2
2.2 Утилита DBE Administrator

Конфигурирование DBE осуществляется посредством утилиты DBE Administrator, которая представлена в программной группе среды Delphi.Утилита DBE Administrator содержит две страницы DataBases (рис.3) и Configuration (рис.4). Все настройки DBE сохраняются в файле IDAPI.CFG.

Страница DataBases DBE Administrator



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

Для создания нового псевдонима необходимо выполнить следующие действия:


  • Щелкните мышью на элементе DataBases.

  • Выберите в меню Object или в контекстном меню команду New.

  • Выберите в списке DataBases Driver Name диалогового окна New DataBases Alias необходимый драйвер.

  • Щелкните на станице Definition в поле Path или в поле Server Name и затем нажмите на кнопку с многоточием. В открывшемся диалоговом окне Select Directory выберите путь для нового псевдонима или сервера.

  • Введите путь непосредственно в поле Path или поле Server Name.

  • При помощи правой кнопки мыши выберите в левой области окна DBE Administrator новый псевдоним и активизируете в контекстном меню команду Apply.

При выборе станицы Configuration на экран выводится список всех инсталлированных драйверов. На этой странице можно добавлять новые драйверы, а также сконфигурировать стандартные драйверы.
Страница Configuration DBE Administrator

Рис.4


В окне Definition выводятся текущие установки выбранного драйвера. Щелкнув мышью на соответствующем поле можно модифицировать установки.

Посредством элемента System/INIT выбираются системные установки, которые сохраняются в файле WINDOWS REGISTRY. Модифицирование полей VERSION и SYSFLAGS недопустимо.

Поле AUTO ODBS может принимать значения true или false. Если это поле имеет значение true, то загружаются все ODBS псевдонимы из файла ODBS.INI. По умолчанию, указанное поле имеет значение false.

В поле DATA REPOSITORY указывается имя текущего словаря данных.

В поле DEFAULT DRIVER указывается драйвер, который используется при открытии базы данных.

В поле LANGDRIVER указывается используемый драйвер языка. Драйвер языка выбирается в открывшемся списке.

Поле LOCAL SHARE может принимать значения true или false. При одновременной обработке одних и тех же файлов DBE приложением и обычным приложением, значение этого поля следует должно быть установлено в true.

Поле LOW MEMORY USAGE LIMIT определяет объем нижней области памяти (до 640 КБ), которую использует DBE. Это значение по умолчанию установлено равным 32 КБ. Для операционных систем Windows это значение безразлично, так как используется float memory model, в которой границы между 640 КБ и остальной памятью исчезают.

Поле MAXBUFSIZE содержит максимальное значение КЭШа базы данных. Это значение должно быть больше значения указанного в поле MINBUFSIZE. По умолчанию, это значение равно 2048 КБ. Данное значение можно устанавливать кратным 128.

В поле MAXFILEHANDLES устанавливается максимальное число файлов, которые могут быть открыты в DBE. Это значение должно находится в промежутке между 5 и 4096. Чем больше данное значение, тем большими возможностями обладает DBE, однако это требует больших ресурсов.

В поле MEMSIZE указывается максимальный размер оперативной памяти, который может использоваться DBE.

В поле MINBUFSIZE указывается минимальный объем КЭШа для базы данных. Значение должно находится между 32КБ и 65535КБ.

В поле SHAREDMEMSIZE указывается максимальный размер оперативной памяти для совместного использования ресурсов. По умолчанию значение этого поля равно 2048КБ. Если приложение использует большое количество драйверов, таблиц, а также системных и клиентских объектов, значение этого поля следует увеличить.

Поле SQLQRYMODE определяет режим SQL запросов. Данное поле может принимать значения nil, server или local.

Посредством элемента Formats/Date определяется способ преобразования строковых значений в значения даты. Если поле FOURDIGITYEAR имеет значение true, то в этом случае для представления года используется четыре цифры (2004), а в противном случае – две (04). Если поле FOURDIGITYEAR имеет значение false, то в поле YEARBIASED можно указать, должно ли добавляться значение 2000 к двум цифрам для представления года.

Поля LEADINGZEROM и LEADINGZEROD определяют формат дня и месяца. Если эти поля имеют значения false, то в этом случае предшествующий нуль не добавляется к значениям дня и месяца (9.7.04).


Установка формата даты в окне DBE Administrator

Рис.5
В поле MODE указывается, в какой последовательности должны выводится день, месяц и год. Это поле может принимать следующие значения:



  • 0 – соответствует последовательности месяц, день, год;

  • 1 – соответствует последовательности день, месяц, год;

  • 2 - соответствует последовательности год месяц, день.

В поле SEPARATOR определяется разделитель между значениями дня, месяца и года.

Посредством элемента Formats/Time указывается способ преобразования строковых значений в значения системного времени. В том случае, если поле TWELVEHOUR имеет значение true, в полях AMSTRING и PMSTRING указывается, какие символы должны следовать за значением системного времени в интервале от 0 до 12 часов (AMSTRING) и соответственно от 12.01 до 23.59 (PMSTRING). По умолчанию принимаются символы AM и PM.

Поле MILSECONDS указывает, содержит ли системное время миллисекунды. Если данное поле имеет значение true, то формат вывода системного времени выглядит в следующем виде: 7:15:33:25.

Если поле SECONDS имеет значение true, то системное время содержит секунды.

Поле TWELVEHOUR определяет представление системного времени в виде двенадцати либо двадцати четырех часового формата. Если поле имеет значение true, то используется двенадцати часовый формат.

Посредством элемента Format/Number указывается, каким образом, строковые значения должны преобразовываться в числовые значения.


Установка формата времени в окне DBE Administrator

Рис.6
Поле DECIMALDIGITS определяет максимальное число десятичных разрядов, выводимых при преобразовании строки в числовое значение.

В поле DECIMALSEPARATOR определяется символ десятичного разделителя.
Установка формата чисел в окне DBE Administrator

Рис.7
В поле LEADINZERON определяется, будет ли использоваться предшествующий нуль для значений в интервале от –1 до +1.

В поле THOUSANDSEPARATOR указывается символ разделителя разрядов.
2.3 Утилита Database Desktop

При помощи утилиты можно создавать и редактировать базы данных в формате dBASE и Paradox, а также выполнять SQL запросы. Данная утилита позволяет редактировать все поля данных, за исключением BLOB полей.

Утилита запускается из программной группы среды Delphi. При первом запуске программы следует указать рабочие каталоги. Определение рабочих каталогов выполняется посредством команд File/Working Directory и File/Private Directory.

Создание новой таблицы выполняется при помощи команды File/New/Table. После выполнения этой команды появится диалоговое окно Create Table, в поле списка которого выбирается тип таблицы (рис.8).


Создание новой таблицы

Рис.8


Поля новой таблицы определяются в области Field Roster, а именно в столбцах вводятся: Field Name, Type, Size и Key. Область Table Properties используется для выбора значений индексов и драйвера языка таблицы.
Структура таблицы Biolife

Рис.9
На рис.9 представлена структура таблицы Biolife, созданная в формате Paradox 7. Данная таблица содержит цифровые поля (N), строковые поля (A) и двоичные поля (M) и (G) преднозначенные для сохранения текста и изображения. Первое поле таблицы определено как автоинкрементное (*).

Для работы с новой таблицей, ее следует сохранить, используя команду Save As. Вывод на экран таблицы выполняется командой File/Open/Table.

На рис.10 представлена предварительно открытая заполненная таблица Biolife. Редактирование данных полей таблицы, за исключением BLOB полей, выполняется командами меню Edit.


Заполненные поля данных таблицы Biolife

Рис.10
Создание таблиц в форматах Paradox и dBASE выполняются по установленным правилам.

Имя поля в таблице формата Paradox представляет собой строку, написание которой подчиняется следующим правилам:


  • имя поля может содержать не более 25 символов;

  • имя поля не должно начинаться с пробела, но может содержать пробелы;

  • имя поля не должно содержать квадратные, круглые или фигурные скобки, тире, а также знаки больше и меньше;

  • имя поля не должно быть только символом #, хотя этот символ может присутствовать в имени среди других символов;

  • не рекомендуется в имени поля использовать точку (.), так как она зарезервирована в Delphi для других целей.

Имя поля в таблице формата dBase представляет собой строку, написание которой подчиняется правилам, отличным от Paradox:

  • Имя должно быть не длиннее 10 символов;

  • пробелы в имени недопустимы.

Имена полей в формате dBase подчиняются более строгим правилам, чем имена полей в формате Paradox. При совместном использовании платформ dBase и Paradox рекомендуется присваивать мена полей в формате Paradox по правилам формата dBase.

Поля таблиц формата Paradox могут иметь следующий тип:



  • Alpha – строка длиной 1-255 байт, содержащая любые печатаемые символы.

  • Number – числовое поле длиной 8 байт, значение которого может быть положительным и отрицательным. Диапазон чисел представляется от 10-308 до 10308 с 15 значащими цифрами.

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

  • Short – числовое поле длиной 2 байта, которое может содержать только целые числа в диапазоне от -32768 до 32767.

  • Long Integer – числовое поле длиной 4 байта, которое может содержать целые числа в диапазоне от -2147483648 до 2147483648.

  • # (BCD) – числовое поле, содержащее данные в формате BCD (Binary Coded Decimal). Скорость вычислений значений в данном формате немного меньше, чем в других числовых форматах, однако, точность вычислений значительно выше. Поле может содержать 0-32 знака после десятичной точки.

  • Date – поле даты длиной 4 байта, которое может содержать дату от 1 января 9999 г. до нашей эры – до 31 декабря 9999 г. нашей эры. Корректно обрабатывает високосные года и имеет встроенный механизм проверки правильности даты.

  • Time – поле времени длиной 4 байта, содержит время в миллисекундах от полуночи и ограничено 24 часами.

  • @ (Timestamp) – обобщенное поле даты длиной 8 байт - содержит и дату и время.

  • Memo – поле для хранения текста. Может иметь любую длину. Размер, указываемый при создании таблицы, означает количество символов, сохраняемых в таблице (1-240) – остальные символы сохраняются в отдельном файле с расширением .MB.

  • Formatted Memo – поле, аналогичное полю Memo, с добавлением возможности задавать шрифт текста. Также может иметь любую длину. При этом размер, указываемый при создании таблицы, означает количество символов, сохраняемых в таблице (0-240) – остальные символы сохраняются в отдельном файле с расширением .MB.

  • Graphic – поле, содержащее графическую информацию. Может иметь любую длину. Смысл размера поля такой же, как и в Formatted Memo. Database Desktop позволяет создавать поля типа Graphic, однако заполнять их можно только в приложении.

  • OLE – поле, содержащее OLE (Object Linking and Embedding) объекты: звук, видео, а также документы, которые для своей обработки вызывают создавшее их приложение. Данное поле может иметь любую длину. Смысл размера поля такой же, как и в Formatted Memo. Database Desktop позволяет создавать поля типа OLE, однако наполнять их можно только в приложении.

  • Logical – поле длиной 1 байт, которое может содержать только два значения - T (true) или F (false). Допускаются строчные и прописные буквы.

  • (+) Autoincrement – автоинкрементное поле длиной 4 байта, содержащее не редактируемое (read-only) значение типа: long integer. Значение этого поля для каждой новой записи автоматически увеличивается на единицу. Начальное значение поля соответствует 1. Применение этого поля удобно для создания уникального идентификатора записи.

  • Binary – это поле, содержащее любую двоичную информацию. Может иметь произвольную длину. При этом размер, указываемый при создании таблицы, означает количество символов, сохраняемых в таблице (0-240) – остальные символы сохраняются в отдельном файле с расширением .MB.

  • Bytes – данное поле предназначено для хранения двоичной информации, представляет собой строку цифр длиной 1-255 байт.

Для ввода типа поля достаточно набрать только подчеркнутые символы.
В формате dBase поля таблиц могут иметь следующий тип:

  • Character (alpha) – поле представляет собой строку длиной 1-254 байт, содержащую любые печатаемые символы.

  • Float (numeric) – числовое поле размером 1-20 байт в формате с плавающей точкой, значение которого может быть положительным и отрицательным. Поле может содержать большие величины, однако следует иметь в виду ошибки округления, возникающие при работе с полем данного типа. Число цифр после десятичной точки (параметр Dec) должно быть по крайней мере на 2 меньше, чем размер всего поля, поскольку в общий размер включаются сама десятичная точка и знак.

  • Number (BCD) – числовое поле размером 1-20 байт, содержащее данные в формате BCD (Binary Coded Decimal). Скорость вычислений значений данного поля немного меньше, чем скорость вычислений в других числовых форматах, при этом, точность вычислений значительно выше. Число цифр после десятичной точки (параметр Dec) также должно быть, по крайней мере, на 2 меньше чем размер всего поля, поскольку в общий размер включаются сама десятичная точка и знак.

  • Date – поле даты длиной 8 байт. По умолчанию, используется формат короткой даты (ShortDateFormat).

  • Logical – поле длиной 1 байт, которое может содержать только значения «true» или «false». Допускаются применение строчных и прописных букв. Также допускается применение букв «Y» и «N» (сокращение от Yes и No).

  • Memo – поле для хранения символов, суммарная длина которых более 255 байт. Поле может иметь любую длину. Данное поле хранится в отдельном файле. Database Desktop не обладает возможностью модифицировать данные в поле типа Memo.

  • OLE – поле, содержащее OLE объекты (Object Linking and Embedding) – образы, звук, видео, документы – которые для своей обработки вызывают создавшее их приложение. Поле может иметь любую длину. Это поле также сохраняется в отдельном файле. Database Desktop обладает возможностью только создавать поля типа OLE, однако наполнять их можно только в приложении.

  • Binary – поле, содержащее любую двоичную информацию. Может иметь любую длину. Данное поле сохраняется в отдельном файле с расширением .DBT.

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

  • Validity Checks – это свойство проверяет минимальное и максимальное значение данных, а также значение по умолчанию. Кроме того, позволяет задать маску ввода.

  • Table Lookup – данное свойство позволяет вводить значение в таблицу, используя уже существующее значение в другой таблице.

  • Secondary Indexes – вторичные индексы. Создание вторичных индексов позволяет осуществлять доступ к данным в порядке, отличном от порядка, заданного первичным ключом.

  • Referential Integrity – ссылочная целостность. Данное свойство позволяет задать связи между таблицами и поддерживать эти связи на уровне ядра базы данных. Как правило, Referential Integrit задается после создания всех таблиц в базе данных.

  • Password Security – данное свойство позволяет закрыть таблицу паролем.

  • Table Language – данное свойство предназначено для выбора языкового драйвера таблицы.

В таблицах формата dBase не существует первичных ключей. Однако, это обстоятельство можно преодолеть путем определения уникальных (Unique) и поддерживаемых (Maintained) индексов (Indexes). Кроме того, для таблиц формата dBase можно определить и язык таблицы (Table Language) т.е. установить языковый драйвер, управляющий сортировкой и отображением символьных данных.

Определения дополнительных свойств таблиц всех форматов доступны через кнопку «Define». Дополнительные свойства можно устанавливать не только при создании таблиц, но и для существующих таблиц. С этой целью в Database Desktop включены команды Table|Restructure Table (для открытой в данный момент таблицы) и Utilities|Restructure (для выбора таблицы). В том случае, если Вы попытаетесь изменить структуру или добавить новые свойства в таблицу, которая в данный момент уже используется другим приложением, Database Desktop выдаст сообщение об отказе, так как данная операция требует монопольного доступа к таблице. Тем не менее, все произведенные в структуре изменения сразу же начинают функционировать, если Вы определите ссылочную целостность для пары таблиц.



Database Desktop обладает возможностью создавать таблицу любого формата путем копирования структуры уже существующей таблицы. Для этого достаточно воспользоваться кнопкой «Borrow», которая расположена в левом нижнем углу окна формы. Появляющееся диалоговое окно позволит Вам выбрать существующую таблицу и включить/выключить дополнительные опции, совпадающие с уже перечисленными свойствами таблиц. Это наиболее легкий способ создания таблиц.
2.4 Утилита Database Explorer

Утилита Database Explorer (браузер баз данных) представляет собой вспомогательную программу, позволяющую выводить на экран структуру базы данных и редактировать ее. При помощи данной утилиты можно также конфигурировать базы данных. Утилита Database Explorer может вызываться как из программной группы Delphi, так и из среды Delphi. Из среды Delphi утилита вызывается при помощи команды Database/Explore (рис.11).

Вид окна SQL Explorer

Рис.11
При помощи данной программы можно выводить и редактировать данные в таблицах баз данных, создавать псевдонимы баз данных и управлять ими, выполнять SQL запросы, а также создавать словари данных (Data Dictionary) и управлять ими. Утилита Database Explorer функционирует аналогично утилите DBE Administrator.


2.5 Мастер форм баз данных

С использованием мастера форм баз данных можно легко создавать формы обращения к таблицам внешних баз данных, таких как InterBase, Paradox, dBASE и Oracle. Мастер форм баз данных берет на себя задачи соединения компонентов формы с компонентами таблиц и запросов, а также определение последовательности активизации элементов управления.

Для создания простых приложений и приложений с архитектурой клиент/сервер необходимо выполнить определенную последовательность действий. Для обоих видов приложений последовательность действий подобна и отличается незначительно. Наиболее полная последовательность действий выполняется при создании приложения с архитектурой клиент/сервер. Для создания такого приложения должен быть инсталлирован сервер InterBase.

Создание нового приложения с архитектурой клиент/сервер начинается с нового проекта в среде Delphi.

Далее при помощи команды Data Bases/Form Wizard запускается мастер форм баз данных.

В первом диалоговом окне мастера форм необходимо установить опции Create a simple form и Create a form using TQuery objects (рис.12). Последняя опция указывает, что обращение к базе данных будет выполняться при помощи SQL – запроса.


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

Рис.12
После нажатия на кнопку Next будет выведено второе диалоговое окно (рис. 12) в котором необходимо выбрать в поле списка Drive or Alias Name запись IBLOCAL для работы с сервером InterBase. В поле Table Name необходимо выбрать зарегистрированную таблицу. Если работа с сервером InterBase еще не производилась, то будет выведено диалоговое окно Database Login (рис. 13). По умолчанию для доступа к базе данных используется имя пользователя SYSDBA и пароль masterkey.


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



Рис.13


Диалоговое окно Database Login

Рис.14
После нажатия на кнопку Next будет выведено третье диалоговое окно, в котором необходимо выбрать используемые поля таблицы. При применении всех полей достаточно нажать на кнопку с двумя стрелками (рис.15).

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

Рис.15
Выбор используемых полей



Рис.16


В четвертом диалоговом окне можно выбрать расположение компонентов управления данными в форме (рис.17).

Четвертое диалоговое окно мастера форм баз данных



Рис.17
После нажатия на кнопку Next будет выведено диалоговое окно (рис.18), в котором задается расположение меток полей в форме.


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

Рис.18


В завершении процесса создания формы в последнем диалоговом окне мастера форм определяется структура программы, которая может состоять раздельно из модуля формы и модуля данных или модуль данных будет включен в модуль формы (рис.19).
Шестое диалоговое окно мастера форм баз данных

Рис.19
После нажатия на кнопку Finish Delphi создает новую форму приложения, которая имеет вид соответствующий примятым установкам (рис.20).


Форма созданная посредством программы Database Form Wizard



Рис.20


Дизайн формы можно изменить самостоятельно.

На рисунке 21 представлено запущенное приложение базы данных.

Из вышеизложенного видно, что мастер форм баз данных позволяет существенно сэкономить трудозатраты при разработке приложений баз данных.
Запушенное приложение, созданное при помощи Database Form Wizard

Рис.21


2.6 SQL сервер InterBase

SQL сервер InterBase представляет собой систему управления реляционными базами данных с использованием приложений архитектуры клиент-сервер произвольного масштаба от сетевой среды небольшой рабочей группы с сервером под управлением Novell NetWare или Windows NT, Windows 2000 до информационных систем крупного предприятия на базе серверов IBM, Hewlett-Packard, SUN и других.

Основное различие между локальными системами управления базами данных, построенными на основе платформ dBASE и Paradox, и SQL сервером InterBase состоит в том, что с применением InterBase на одном персональном компьютере можно создавать полноценные приложения с многопользовательской архитектурой клиент/сервер. InterBase позволяет производить отладку приложений на одном персональном компьютере без использования полноценного DBMS сервера. Инсталляция соответствующей версии InterBase выполняется отдельно.

Работа с InterBase начинается с вызова InterBase Server Manager, из программной группы InterBase. Как известно, при разработке многопользовательского приложения типа клиент/сервер необходимо предусмотреть идентификации каждого пользователя. Для этого служит команда Server Login в меню File (рис.22).

Вид InterBase Saver Manager, после выполнения команды Server Login



Рис.22


Процесс регистрации пользователя осуществляется следующим образом. При первом сеансе работы с InterBase Server Manager необходимо ввести в поле User Name стандартное имя SYSDBA, а в поле Password – стандартный пароль masterkey. Этот пароль в последующем можно будет изменить. После ввода указанных данных и выполнения щелчка по кнопке OK, будет выведено окно, показанное на рисунке 23.
Окно InterBase Saver Manager, после выполнения первой регистрации

Рис.23


После выполнения первой регистрации, следует осуществить соединение с конкретной базой данных. Данное соединение выполняется посредством команды File/Database Connect, которая выводит диалоговое окно Connect to Database (рис. 24). Путь доступа к базе данных выбирается с поможью кнопки Browse. После установки соединения с базой данных недоступные ранее команды меню: File, Tasks и Maintenance становятся доступными (рис. 25).

Диалоговое окно Connect to Database



Рис.24
Окно InterBase Saver Manager, после установки соединения с базой данных



Рис.25
Команда Database Disconnect меню File предназначена для завержения работы с базой данных. В меню Tasks становится доступной опция Database Statistics, позволяющая получить сведения о текущей базе данных.

Для регистрации новых пользователей, модификации паролей и удаления регистрационных записей пользователей используется команда Tasks/User Security. В результате выполнения этой команды появится диалоговое окно Interbase Security (рис.26).
Диалоговое окно Interbase Security

Рис.26
Регистрация, модификация и удаление пользователей выполняется выбором соответствующей кнопки в диалоговом окне Interbase Security. При выборе кнопки Add User будет выведено диалоговое окно User Configuration (рис. 15. 27), в котором необходимо заполнить соответствующие поля и нажать на кнопку OK.

Команды Tasks/Backup и Tasks/Restore позволяют создать резервную базу данных и восстановить исходную базу данных.

Команда Task/Database Statistics, открывает окно, в котором представлена подробная информация о текущей базе данных (рис.28).


Диалоговое окно User Configuration, используемое для регистрации новых пользователей

Рис.27


Окно Database Statistics

Рис.28


При помощи команды Maintenance/Database Properties выводится диалоговое окно, в котором указывается Sweep Interval. Sweep Interval является важным свойством базы данных. При управлении базой данных Interbase протоколирует все действия, предпринимаемые во время сессии. Это означает, что сохраняется несколько версий записи данных. Каждый раз, когда запись становится текущей или удаляется, сохраняются старая и новая версии записи. Вследствие этого, размер базы данных очень сильно увеличиваться. В результате выполнения операции Sweep все ненужные записи физически удаляются. После обновления, база данных сохраняется на жестком диске. Процесс обновления базы данных может выполняться автоматически. Для этого необходимо в поле Sweep Interval указать, после какого количества удаленных записей должна выполняться данная операция.

Используя Interbase Server Manager можно выполнять SQL команды для активной в данный момент базы данных. SQL команды вводятся в диалоговом окне Interbase Interactive SQL, которое вызывается посредством команды Tasks/Interactive SQL.

Структура таблиц в формате Interbase определяется строгими правилами:


  • Имя поля должно быть не длиннее 31 символа.

  • Имя поля должно начинаться с букв A-Z, a-z.

  • Имя поля может содержать буквы A – Z, a – z, цифры, знак $ и символ подчеркивания (_).

  • Пробелы в именах таблиц и полей недопустимы.

  • Для имен таблиц запрещается использовать зарезервированные слова InterBase.

Поля таблиц формата InterBase могут иметь следующий тип:



  • SHORT – числовое поле длиной 2 байта, которое может содержать только целые числа в диапазоне от -32768 до 32767.

  • LONG – числовое поле длиной 4 байта, которое может содержать целые числа в диапазоне от -2147483648 до 2147483648.

  • FLOAT – числовое поле длиной 4 байта, значение которого может быть положительным и отрицательным. Диапазон чисел – от 3.4*10-38 до 3.4*1038 с 7 значащими цифрами.

  • DOUBLE – числовое поле длиной 8 байт, значение которого может быть положительным и отрицательным. Диапазон значений чисел представляется в пределах от 1.7*10-308 до 1.7*10308 и имеет 15 значащих разрядов.

  • CHAR – строка символов фиксированной длины 0-32767 байт, содержащая любые печатаемые символы.

  • VARCHAR – строка символов переменной длины 0-32767 байт, содержащая любые печатаемые символы.

  • DATE – поле даты длиной 8 байт, значение которого может быть от 1 января 100 года до 11 декабря 5941 года.

  • BLOB – поле, содержащее любую двоичную информацию. Может иметь любую длину.

  • ARRAY – поле, содержащее массивы данных. InterBase позволяет определять массивы, имеющие размерность 16. Поле может иметь любую длину.

  • TEXT BLOB – подтип BLOB-поля. TEXT BLOB содержит только текстовую информацию и может иметь любую длину.

СУБД Interbase представляет очень мощный и объемный инструмент, которому посвящен большой объем специальной литературы и полностью описать все возможности и способы работы в данной книге не представляется возможным.
1   2   3   4   5   6   7   8   9


База даних захищена авторським правом ©shag.com.ua 2016
звернутися до адміністрації

    Головна сторінка