Файл: Практикума по дисциплине базы данных.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.01.2024

Просмотров: 72

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


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

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

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

Многоярусные базы данных. Это новый и многообещающий путь обработки данных в сети. Наиболее распространен трехярусный вариант:

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


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

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

Подобную концепцию обработки данных пропагандируют, в частности, фирмы Oracle и Sun. Пер­вый, элементарный уровень состоит из «тонких клиентов», то есть несложных терминалов, предназна­ченных, в основном, для ввода — вывода. Второй, средний (middleware) уровень — это рабочие станции и серверы приложений, то есть значительно более серьезные машины, на которых выполняются про­граммы, критичные к загрузке процессора. Третий и последний уровень — мощные специализирован­ные серверы баз данных.                

2.2. Создание базы данных с помощью Database Desktop

Прежде, чем начать строить приложения, работающие с базами данных, надо иметь сами базы дан­ных. Вместе с BDE и Borland C++Builder поставляется программа Database Desktop (файл DBD.EXE для 16-разрядных приложений, файл DBD32.EXE для 32-разрядных приложений, файл DBDLOCAL.EXE — файл конфигурирования), которая позволяет со­здавать таблицы баз данных некоторых СУБД, задавать и изменять их структуру.

Обычно вызов Database Desktop включен в главное меню Borland C++Builder в раздел Tools. Если это не сде­лано, то полезно включить его туда с помощью команды Tools | Configure Tools.... Вызовите Database Desk­top. Вы увидите окно, показанное на рис. 2.1 (если в предыдущем сеансе работы с Database Desktop не была открыта какая-то таблица, то таблицы в середине окна не будет видно и разделов меню будет поме­ньше).

Рис.2.1. Вид Database Desktop
Давайте создадим с помощью Database Desktop таблицу базы данных СУБД Paradox v.7. В Paradox v.7 база данных — это каталог, в котором лежат таблицы — файлы с расширением .db. Поэтому прежде надо создать соответствующий каталог с помощью любой программы Windows, например, с помощью «Проводника». Далее выполните команду Database Desktop File | New- Вам откроется подменю, содержа­щее три варианта.

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




Рис.2.2. Окно создания таблицы.
Для каждого поля создаваемой таблицы прежде всего указывается имя (Field Name) — идентифика­тор поля. Он может включать до 25 символов и не может начинаться с пробела (но внутри пробелы допу­скаются). Затем надо выбрать тип (Type) данных этого поля. Для этого перейдите в раздел Type поля и щелкните правой кнопкой мыши. Появится список доступных типов, из которого вы можете выбрать необходимый вам. Приведем пояснения типов данных, используемых в Paradox.

Таблица 2.1

Обозначение

Размер

Обозначение в списке

Пояснение

1

2

3

4

А

1-255

Alpha

Строковое поле, содержащее любые печатаемые символы ASCII. Размер число символов

N




Number

Действительные числа от -10 307-10308с 15 значащими разрядами.

$




Money

Положительные или отрицательные числа, отличающиеся от Number формой представления

S




Short

Короткие числа -32767 до 32767

I




Long Integer

Длинные числа от -2 147 483 648 до 2 147 483 647

1

2

3

4

#

0-32

BCD

Числа в формате BCD Binary Coded Decimal, вычисления проводятся с большей точностью.

D




Date

Значения представления даты

T




Time

Значения представления времени

@




Timestamp

Значения, хранящие и дату и время

M

1-240

Memo

Поля для хранения текстов неограниченной длины. Тексты хранятся в отдельных файлах .mb

F

0-240

Formatted Memo

Поля для хранения форматированных текстов неограниченной длины. Тексты хранятся в отдельных файлах .mb

G




Graphic

Изображение из файлов в форматах .bmp, .pcx, .tif, gif, .eps. Database Desktop преобразует их в формат .bmp.

O




OLE

Данные типа OLE – изображения, звуки, документы. Database Desktop не поддерживает поля этого типа.

L




Logical

Логические поля – true, false

+




Autoincrement

Автоматическое увеличение на 1.

B




Binary

Данные хранящиеся в отдельных двоичных файлах .mb. Database Desktop не поддерживает поля этого типа

Y

1-255

Bytes

Database Desktop не поддерживает поля этого типа.


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



Рис.2.3. Структура таблицы данных Kadr.db

    1. Задание свойств таблицы

Теперь обратите внимание на правую часть окна (рис. 2.3). В нем задаются свойства таблицы (Table properties). Вверху имеется выпадающий список с рядом разделов.

Validity Checks — проверка правильности значений

Начнем с первого из них: Validity Checks — проверка правильности значений. Вы можете задать следующие характеристики поля:       - поля с обязательным заполнением, минимальное значение, максимальное значение, значение по умолчанию, шаблон данных.

Table Lookup — таблица просмотра

Следующий раздел в выпадающем списке свойств таблицы в правом верхнем углу экрана на рис. 2.3: Table Lookup — таблица просмотра. Этот раздел позволяет связать с полем данной таблицы ка­кое-то поле другой, просматриваемой таблицы, из которой будут браться интересующие нас значения. При выборе Table Lookup на экране появляется кнопка Define — определить. При ее нажатии открывается диалоговое окно. В нем вы можете для данного поля задать таблицу просмотра (Lookup table). При этом вы можете воспользоваться выпадающим списком драйверов или псевдонимов (Drive or Alias) и кнопкой просмотра (Browse...). А затем кнопкой со стрелкой занести поле просматривае­мой таблицы, из которого будут браться данные.
Secondary Indexes — вторичные индексы

Следующий раздел в выпадающем списке свойств таблицы: Secondary Indexes — вторичные индек­сы. Этот раздел позволяет создавать необходимые для дальнейшей работы вторичные индексы (первичный индекс создается по ключевым полям).

Чтобы создать новый вторичный индекс, нажмите кнопку Define — определить. В его левом окне Fields содержится список доступных полей, в пра­вом окне Indexed fields вы можете подобрать и упорядочить список полей, включаемых в индекс. Для пе­реноса поля из левого окна в правое надо выделить интересующее вас поле или группу полей и нажать кнопку со стрелкой вправо. Стрелками Change order (изменить последовательность) можно изменить по­рядок следования полей в индексе.

Referential Integrity — целостность на уровне ссылок

Речь идет о способах, позволяющих обеспе­чить постоянные связи между данными отдельных таблиц. Если устанавливается целостность на уровне ссылок между двумя таблицами, одна из которых — головная (родительская), а другая — вспомогатель­ная (дочерняя), то во вспомогательной таблице указывается поле (или группа полей), которые могут брать свои значения только из ключевого поля (или полей) головной таблицы.