Банки данных

1. Что включают в себя банки данных

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

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

ПП служат для обработки данных в БД.

2. Важнейшие модели БД

1 иерархическая

2 сетевая

3 реляционная

4 объектно-ориентированная

В 1 БД данные представляются в виде древовидной структуры

Во 2 данные организуются в виде графов

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

В 4 объединение сетевой и реляционной, испол. для создания сложной структуры в крупных БД.

3. Инструментальные средства работы с БД

Это спец. программы и пакеты, обеспечивающие обслуживание БД вне разрабатываемых приложений.

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

-BDE Administrator-утилита для настройки BDE

-Database Desktop-программа для создания и редактирования таблиц SQL и QBE запросах.

4. Компоненты для создания приложений, работающих с БД

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

На странице Data Access находятся не визуальные компоненты, с пом. которых можно организовывать доступ к данным.

Data Source-источник данных

Table-набор данных, основанный на табл. БД

Qucry-набор данных, основанный на SQL запросе

Data Base-соединение с БД.

На страницах Data Controls находятся визуальные компоненты, предназначенные для управления данными.

DBGrid-сетка в скобках табл.

DBNavigator-навигационный интерфейс

DBText-надпись

DBMemo-многострочный редактор

DBEdit-однострочный редактор

DBListBox простой список

5. Характеристика локальных БД

Приложение Delphi осущ. доступ к БД через BDE (процессор БД). BDE представляют собой набор драйверов, обеспечивающих доступ к данным. Локальные БД расположены на том же компьютере, что и приложение, работающее с ними. Работа с БД происходит в однопользовательском режиме. При необходимости можно запустить на компе другое приложение, одновременно  осущ. доступ к этим же данным. Для управления совместным доступом к БД необходимы спец. средства контроля и защиты. Эти средства могут понадобиться когда приложение пытается изменить запись, которую редактирует другое приложение. Delphi поддерживает 2 вида локальных табл.: dBase и Paradox.

6. Языковые средства современных БД

-язык описания данных (предназначен для описания логической структуры данных)

-язык манипулирования данными (выполнение основных операций над данными (ввод, модификация, выбрка))

-структурированный язык запросов –SQL (управление структурой БД и манипулирование данными, стандартное средство доступа к удаленной БД)

-язык запросов по образцу – QBE (визуальное конструирование запросов в БД)

7. Этапы создания БД

1. Сначала создаем БД:

1. Пуск-программы-BD7-BDE Administrator

2. В окне выбрать команду ObjectNew

Выбрать STANDARD-ok

Вместо STANDARD1 ввести имя

На Definition нажать click

Нажать на …

Тут можно указать адрес, либо выбрать диск-ok

Выполнить команду Object-Apply-ok

2. Создаем таблицу БД

3. Форму приложения.

8. Этапы создания таблиц БД

1. Пуск-программы-BD7-Database Desktop

2. В окне File-New-Table

Выбрать Paradox7-ok

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

Для указания ключевых полей надо написать символ *.

3. Сохранить-Save As

В списке Alias выбираем имя БД, созданную  в администраторе. Чтобы изсенить структуру табл. Table-Restructure.

9. Создание формы приложения

На форму необходимо расположить след. компоненты:

Table1, DataSource1- невидимые

DBGrid1, DBNavigator1 –видимые

Для связи с требуемой таблицой надо установить значения свойств DataBaseName, которое указывает путь к БД и TableName, кот. задает имя табл. После свойству Active присваивается значение true. На компоненте Table1 с которым связан DataSource1, указывают свойство DataSet последним. Компоненты DBGrid и DBNavigator связываются со своим источником данных компонентом DataSource1 через свойство  DataSource.

10. Характеристика наборов данных

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

11. Особенности наборов данных

Компонент Table представляет набор данных, который в некоторый момент времени может быть связан с одной табл. БД. Набор данных, возвращаемый компонентом Table основан на навигационном способе данных. Его рекомендуется исол. для локальных БД. при работе с удаленными БД надо испол. компонент Query. Связь между табл. и компонентом Query устанавливается через его свойство TableName. Для от бора записей можно испол. фильтрацию. Для того чтобы запретить пользователю изм. записи можно испол. Св-во ReadOnly. Многопользовательский режим необходим для: добавления или удаления индекса. Установить текущий индекс можно с пом. св-ва IndexName(знач. явл. имя индекса) или IndexFieldName(знач. явл. имя поля).

12. Создание вторичных ключей

При выборе пункта Secondary Indexes из списка Table Properties становится доступной иконка Define. После ее нажатия появл. окно Define Secondary Index. В этом окне созд. индексные поля, и параметры индекса, применяемы с пом флажков:

-Unique – индекс допускает уникальные значения для составляющих его полей.

-Case sensitive –для полей строкового типа учитывается регистр символов.

-Descending – сортировка убавляется в порядке убывания знач.

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

13. Состояние наборов данных

Наборы данных могут находиться в открытом или закрытом состояниях, на что указывает свойство Active и Boolean. Если установить свойство Active, то набор открыт. Если нет то связь с БД разорвана. Набор данных может быть открыт на этапе разработки приложения. Если при этом к набору данных через источник данных DataSourсe подключены визуальные компоненты, то они отображают соответствующие данные таблицы БД.



14. Типы полей таблиц Paradox

Alpha (A)-строка символов, не более 255.

Number (N)-число с плавающей точкой, точность 15 цифр мантиссы, диапазон от -10 в 307 до 10 в 308

Money ($)-денежная сумма

Short (S)-целое число, диапазон от -32768 до 32767

Long Integer (I)-целое число, от -2147484648 до 2147483647

BCD (#)-число в двоично-десятичном формате

Date (D) – дата, диапазон от 01.01.9999 до н.э. до 31.12.9999

Time (T)-время

Timestamp (@) дата и время

Memo (M)-строка символов, длина не ограничена

Formatted Memo (F)-строка символов, может содержать форатированный текст

Logical (L)-логическое значение

Auto increment (+)-автоинкрементное поле, каждый раз на 1 больше.

15. Режимы наборов данных

-dsInactive — неактивный. 

-dsBrowse — режим просмотра. 

-dsEdit — режим редактирования. 

-dsInsert — режим вставки. 

-dsSetKey — режим поиска, 

-dsFilter — режим фильтра. 

-dsNewValue — режим доступа к свойству -NewValue. Данный режим является временным; 

-dsOldValue — режим доступа к свойству OldValue. Также является временным; 

-dsCurValue — режим доступа к свойству CurValue. временный режим; 

-dsBlockRead — режим чтения блока данных

-dsInternalCalc — режим внутренних вычислений. 

-dsOpening — режим открытия набора данных. Подразумевает состояние еще не завершенного открытия набора данных. 

16. Доступ к полям набора данных

Каждое поле набора данных представляет собой отдельный столбец, для работы с которым в Delphi служат объект Field типа TField и объекты производных от него типов, например, TIntegerField, TFloatField или TStringFieid. 

Свойство FieldCount типа integer указывает количество полей набора данных. Это свойство доступно только для чтения.

Значение свойства Fields типа TField представляет собой поле (столбец) набора данных. К отдельному полю можно обратиться, указав его номер index в массиве Fields.

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

Поэтому для доступа к полям чаще используются методы FindField и FieldByName.

Функция FindFieid  возвращает для набора данных поле, имя которого указывает параметр FieldName. В отличие от номера в массиве полей, имя поля более статично и изменяется реже. Кроме того, имя поля несет большую смысловую нагрузку, чем номер. Если заданное параметром FieldName поле не найдено, то метод FindField возвращает значение Null. На практике чаще используется метод FieldByName, который отличается от метода FindFieid тем, что если заданное поле не обнаружено, то генерируется исключительная ситуация.