У вас вопросы?
У нас ответы:) SamZan.net

Тема- Технология создания БД в Дельфи- BDE

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 28.12.2024

Практическая работа №1.

Тема: Технология создания БД в Дельфи: BDE.

Цели:

  1.  Изучить технологию создания БД в Дельфи: BDE.
  2.  Изучить алгоритм создания БД в Delphi.
  3.  На практическом примере изучить работу утилит BDE Administrator и Database Desktop.
  4.  Развивать внимание и навыки самостоятельной работы.

Ход работы:

I. Выполнения задания по инструкции

1. Понятие БД (база данных). Типы БД.

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

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

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

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

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

Paradox, dBase, FoxPro и Access – это локальные базы данных.2

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

Программа работы с удалённой базой данных состоит из двух частей: клиентской и серверной.

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

Серверная часть программы, работающая на удалённом компьютере, принимает запросы, выполняет их и пересылает данные клиентской программе. Запросы представляют собой команды, представленные на языке SQL (Structured Query Language) – языке структурированных запросов.

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

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

Interbase, Oracle, Sysbase, Infomix, Microsoft SQL Server – это удалённые базы данных.4

Разработка программы работы с удалённой базы данных – сложная и трудоёмкая задача. Её решение предполагает наличие у разработчика глубоких знаний и больщого опыта разработки программного обеспечения. Поэтому в данном курсе задача разработки удалённых баз данных не рассматривается.

В комплекте с Delphi поставляется целый ряд инструментальных средств, предназначенных для работы с БД.

Название

Назначение

BDE (Borland Database Engine) 

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

BDE Administrator 

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

Database Desktop (DBD)

Представляет собой средство для создания, изменения и просмотра БД.

Database Explorer (SQL Explorer) 

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

SQL Monitor 

Средство, предназначенное для отслеживания порядка выполнения SQL- запросов.

SQL Links 

Драйверы предназначены для работы с удаленными "промышленными" СУБД, такими как Sybase, MS SQL Server, Oracle. Для работы с "родным" SQL-сервером Borland InterBase устанавливать SQL Links нет необходимости. Доступ к таблицам локальных ("настольных", "персональных") СУБД типа Paradox, dBase также осуществляется BDE напрямую, без использования SQL Links.

Datapump

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

Local InterBase Server 

Локальная однопользовательская версия SQL-сервера Borland InterBase, применяемая для поддержания двух активных линий соединения клиентов с сервером. Используется в основном для создания БД, отладки приложений клиентов, которые предназначаются для работы с удаленными БД. В дальнейшем, после отладки, БД переносятся на удаленный сервер, а приложение клиента перенастраивается для работы с удаленной БД. Данная перенастройка обычно не требует больших трудозатрат.

InterBase Server for Windows 

Представляет собой 4-пользовательскую версию SQL-сервера Borland InterBase, которая может устанавливаться на компьютерах, работающих под управлением Windows. Используется для тех же целей, что и Local InterBase Server, однако на InterBase for Windows можно производить отладку в многопользовательском режиме, что важно для проверки корректности изменений, одновременно вносимых пользователями в БД при параллельной работе с ней.

Visual Query Builder 

Средство в составе интегрированной среды Delphi, служит для автоматического создания SQL-запросов методом QBE (Query By Example - запрос по образцу).

Data Dictionary 

Словарь данных, является средством для хранения атрибутов полей таблиц БД отдельно от самих БД и приложений.

Data Module

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

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

Object Repository 

Представляет собой репозиторий объектов Delphi. Будучи единожды разработанными для какого-либо приложения, формы с визуальными и невизуальными компонентами, а также компоненты TDataModule могут сохраняться в репозиторий. В этом случае они могут использоваться другими, вновь создаваемыми приложениями. Таким образом устраняется необходимость повторного написания идентичного или схожего кода в приложениях.

Data Migration Wizard.

Средство для перемещения данных между БД различных типов.

Невизуальные компоненты для работы с БД 

Служат для соединения приложения с таблицами БД.

Визуальные компоненты для работы с БД 

Визуальные компоненты Delphi предназначены для визуализации записей наборов данных (например, компонент TDBGrid) или отдельных полей текущей записи набора данных (например, TDBEdit, TDBText).

QuickReport,

Rave Reports

Инструментальные средства, предназначенные для формирования отчетов БД.

2. Алгоритм создания БД

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

  1.  Создание каталога.
  2.  Создание псевдонима.
  3.  Создание таблиц.
  4.  Разработка приложения, работающего с БД.

  1.  
    Создание каталога

Каталог (папка) для файлов базы данных создаётся обычным образом, например, при помощи Проводника. Обычно файлы локальной базы данных помещаются в отдельном каталоге программы работы с базой данных.5

На диске D создайте папку со своей фамилией. Это будет ваша рабочая папка в течение всего этого курса. В этой папке создайте ещё одну папку с именем PR1 (что значит – Практическая работа №1).

  1.  Создание псевдонима

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

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

Псевдоним (Alias) – это короткое имя, поставленное в соответствие реальному, полному имени каталога базы данных. Например, псевдонимом каталога C:\data\SРeterburg может быть имя Рeterburg. Программа работы с базой данных для доступа к данным использует не реальное имя, а псевдоним.6

Характерной особенностью программ, создаваемых с помощью Delphi и предназначенных для работы с базами данных, является их зависимость от специальной беблиотеки программ, которая называется BDE  (Borland Database Engine – машина баз данных корпорации Borland).

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

Для доступа к информации программа, обеспечивающая работу с базой данных, подключает библиотеку Borland Database Engine (BDE), которая в свою очередь, использует конфигурационный файл, содержащий информацию о всех зарегистрированных в системе псевдонимов.8

Псевдоним базы даннных создаётся при помощи входящей в Delphi утилиты BDE Administrator, которая запускается из Windows выбором из меню Пуск Программы Borland Delphi 7 BDE Administrator.9 Запустите её. Вид диалогового окна BDE Administrator после запуска приведён на рисунке 1.

Рис. 1. Окно BDE Administrator.

В левой части окна, на вкладке Database, перечислены псевдонимы, зарегистрированные на данном компьютере. Создадим новый псевдоним. Для этого из меню Object выберем команду New. В результате откроется диалоговое окно New Database Alias (Новый псевдоним базы данных), где будет предложен список Database Driver Name в котором перечислены зарегистрированные в системе драйверы доступа к базам данных, иными словами тип создаваемой базы данных.

При создании псевдонима по умолчанию предлагается драйвер STANDARD (default driver), который обеспечивает доступ к таблицам в формате Paradox. Мы ничего менять не будем и просто нажмём кнопку ОК. (рис. 2)

Рис. 2. Диалоговое окно New Database Alias

После выбора драйвера и щелчка на кнопке ОК в список псевдонимов будет добавлен новый элемент (рис. 3).

Рис. 3. Регистрация нового псевдонима

 

Изменим автоматически созданное администратором имя STANDARD1 на PR1, а во вкладке Definition укажем путь к папке, где будут храниться файлы нашей БД. Для этого в конце поля PATH щелкаем левой кнопкой мыши по пиктограмме с трёмя точечками – откроется диалоговое окно. Находим на компьютере папку PR1 и щёлкаем по кнопке ОК (рис. 4).

Рис. 4. Результат создания псевдонима

 

Теперь, чтобы вновь созданный псевдоним был зарегистрирован на нашем компьютере, сохраним его. Для этого из меню Object выберем команду Apply. В открывшемся диалоговом окне Confirm следует подтвердить необходимость сохранения изменений в файле конфигурации (кнопка ОК).

  1.  Создание таблицы

Теперь, когда создан каталог и зарегистрирован псевдоним, приступим непосредственно к созданию таблицы.

Таблицы создаются при помощи входящей в состав Delphi утилиты Database Desktop.

Утилита Database Desktop позволяет выполнять все необходимые при работе с базами данных действия. Она обеспечивает создание, просмотр и модификацию таблиц баз данных различных форматов (Paradox, dBASE, Microsoft Access). Кроме того, утилита позволяет выполнять выборку информации путем создания запросов.10

Запускается данная утилита из Windows выбором из меню Пуск Программы  Borland Delphi 7 Database Desktop. Запустим её.

Затем в появившемся окне утилиты Database Desktop надо из меню File выбрать команду New и в появившемся списке выбрать тип создаваемого файла – Table (рис. 5). Затем в открывшемся диалоговом окне Create Table (рис. 6) следует выбрать тип создаваемой таблицы (значением по умолчанию является тип Paradox 711 – его мы и оставим, нажав кнопку ОК).

Рис. 5. Диалоговое окно Database Desktop

Рис. 6. Выбор типа таблицы

В результате открывается диалоговое окно Create Paradox 7 Table (рис. 7), в котором можно определить структуру записей таблицы.

Рис. 7. Диалоговое окно Create Paradox 7 Table

Сегодня мы создадим с вами однотабличную БД «Записная книжка», таблица которой будет содержать следующие поля:

Таблица 1. Поля записей базыданных «Записная книжка»

Каждая строка таблицы соответствует полю. Назначения столбцов:

  •  Fields Name-имя поля;
  •  Type – тип поля; 
  •  Sizeразмер поля (для строковых полей, поскольку иные поля подразумевают размер, определяемый типом поля);
  •  Keyсодержит звездочку «*», если поле входит в состав первичного ключа. Если в первичный ключ входит несколько полей, они должны определяться в той последовательности, в которой они присутствуют в первичном ключе. Кроме того, все поля, входящие в состав первичного индекса, должны определяться перед иными полями, то есть быть в списке полей наверху.

Рассмотрим возможные типы полей СУБД Paradox:

Тип поля

Обозна-чение

Размер

Хранимые значения

Alpha

A

1-255

Текстовое поле указанной длины.

Number

N

Числа с плавающей запятой в диапазоне от -10307 до +10307 с 15 значащими десятичными разрядами.

Money

$

Денежное поле. Содержит вещественные числа с фиксированной запятой, 6 знаками целой части и 2 знаками дробной.

Short

S

Целые числа в диапазоне от -32 768 до +32 767

Long Integer

I

Целые числа в диапазоне от -2 147 483 648 до +2 147 483 647.

BCD

#

0-32

Двоично-десятичные вещественные числа. Size ‒ количество разрядов после запятой.

Date

D

Дата в диапазоне от 1.01.0000 до 31.12.9999.

Time

T

Время с точностью до миллисекунд.

Timestamp

@

Дата и время.

Мемо

M

1-240

Мемо-поле для размещения произвольных текстовых строк неограниченной длины. Первые Size символов хранятся в основной таблице, остальные ‒ в файле с расширением .MB.

Formatted Memo

F

0-240

Мемо-поле для размещения форматирован-ного текста в формате RTF.

Graphic Fields

G

0-240

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

OLE

O

0-240

Объект OLE.

Logical

L

Логическое поле. Содержит значение True или False.

Autoincrement

±

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

Binary

B

0-240

Набор байтов произвольной длины. Первые Size байтов хранятся в основной таблице, остальные ‒ в отдельном файле.

Bytes

Y

1-255

Набор из Size байтов (целиком хранится в таблице).

В диалоговом окно Create Paradox 7 Table создадим необходимые поля в соответствии с таблицей 1 (см. рис. 8).

Рис. 8. Создание полей таблицы

Для каждого поля определим требование обязательного заполнения поля значением. Для этого, переходя от поля к полю, включим переключатели Required Field. Другие поля служат для наложения ограничений на значение поля:

  •  Minimum value определяет минимальное значение поля;
  •  Maximum value определяет максимальное значение поля;
  •  Default value определяет значение поля по умолчанию;
  •  Picture определяет шаблон изображения поля. Для формирования шаблона следует нажать кнопку Assist.

Отсутствие значения в одном из полей означает отсутствие ограничений на значение поля.

Теперь нам необходимо сохранить нашу таблицу. Нажимаем кнопку Save As… в открывшемся диалоговом окне Save Table As в поле Имя файла пишем имя таблицы записная_книжка, в поле Тип файла всё оставляем без изменения, а в поле Alias из выпадающего списка выбираем псевдоним PR1, ставим галочку в пункте Display table и нажимаем кнопку Сохранить. (см. рис. 9).

Рис. 9. Окно сохранения таблицы

После того, как мы определим имя создаваемой таблицы AVTO, в каталоге C:\Proba (он назначен псевдониму Proba, используемому нами в качестве рабочего псевдонима) будет создан файл Avto.DB и файлы индексов с соответствующими расширениями

Если в структуру существующей таблицы БД необходимо внести изменения, следует выбрать элемент меню File|Open|Table, в появившемся диалоговом окне выбрать имя таблицы и нажать кнопку Ok. Будет показано содержимое таблицы.

Теперь мы можем вносить в неё данные. Для этого щёлкните по пиктограмме и внесите в таблицу 5 записей (рис. 10).

Рис. 10. Записи таблицы БД «Записная книжка»

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

Чтобы изменить структуру таблицы, выберите элемент меню Table|Restructure. Вслед за этим будет показано диалоговое окно для определения структуры таблицы.

Создадим индекс по полям «Год выпуска» и «Марка». Для этого в комбинированном списке Table Properties (в правом верхнем углу окна) выберем элемент Secondary Indexes. После этого диалоговое окно приобретет вид, показанный на рис.1.11.

Рис.1.11. В правой части окна появился элемент Secondary Indexes

Чтобы определить новый индекс, нажмем кнопку Define. В появившемся диалоговом окне в поле Fields содержится список полей определяемой нами таблицы. Поле Index Fields предназначено для хранения полей, входящих в создаваемый индекс. Чтобы скопировать конкретное поле из списка Fields в список Index Fields, нужно нажать кнопку с изображением правой стрелки. Последовательность добавления полей в список важна, она определяет порядок чередования полей в списке. После того как поместили нужные поля в список Index Fields. Нажмем кнопку Ok.

Рис.1.12. Определение полей, входящих в состав индекса

В появившемся окне запрашивается имя индекса. Следует ввести имя и нажать Ok.

Рис.1.13. Окно сохранение индекса

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

Как видно на рис.1.14, после добавления нового индекса его имя появилось в списке индексов.

Рис.1.14. Список индексов, определенных для таблицы AVTO

Впоследствии, щелкнув по имени индекса, мы можем его удалить (кнопка Erase) или изменить (кнопка Modify).

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

II. Контрольные вопросы

  1.  Какие бывают БД? Охарактеризуйте каждый вид. Приведите примеры.
  2.  Что такое транзакция?
  3.  Для чего предназначен BDE?
  4.  Для чего предназначены утилиты BDE Administrator и Database Desktop?
  5.  Как загрузить утилиты BDE Administrator и Database Desktop?
  6.  Что такое псевдоним БД?
  7.  Как создать псевдоним БД?
  8.  Перечислите основные пункты алгоритма создания БД в Delphi.

III. Самостоятельная работа

Задание: Требуется создать БД, состоящую из одной таблицы, которая содержит сведения о деканате.

1 Культин Н.Б. Основы программирования в Delphi 7. – СПб.: БХВ-Петербург, 2003. – 608 с.: ил. (стр. 507)

2 Культин Н.Б. Основы программирования в Delphi 7. – СПб.: БХВ-Петербург, 2003. – 608 с.: ил. (стр. 508)

3 Культин Н.Б. Основы программирования в Delphi 7. – СПб.: БХВ-Петербург, 2003. – 608 с.: ил. (стр. 508)

4 Культин Н.Б. Основы программирования в Delphi 7. – СПб.: БХВ-Петербург, 2003. – 608 с.: ил. (стр. 507)

5 Культин Н.Б. Основы программирования в Delphi 7. – СПб.: БХВ-Петербург, 2003. – 608 с.: ил. (стр. 511)

6 Культин Н.Б. Основы программирования в Delphi 7. – СПб.: БХВ-Петербург, 2003. – 608 с.: ил. (стр. 510)

7 Фаронов В.В. Программирование баз данных в Delphi 7. Учебный курс. СПб.: Питер, 2006. – 459 с.: ил. (стр. 20)

8 Культин Н.Б. Основы программирования в Delphi 7. – СПб.: БХВ-Петербург, 2003. – 608 с.: ил. (стр. 511)

9 Культин Н.Б. Основы программирования в Delphi 7. – СПб.: БХВ-Петербург, 2003. – 608 с.: ил. (стр. 512)

10 Культин Н.Б. Основы программирования в Delphi 7. – СПб.: БХВ-Петербург, 2003. – 608 с.: ил. (стр. 515)

11 Культин Н.Б. Основы программирования в Delphi 7. – СПб.: БХВ-Петербург, 2003. – 608 с.: ил. (стр. 516)




1. Заповідники України
2. ТЕМА- ЗОБРАЖЕННЯ ФІГУРИ Мета познайомити учнів з процесом роботи художника над зображенням людини; р
3. Контрольная работа 1 Для правильного выполнения заданий контрольной работы 1 необходимо изучить след
4. Дэниел Рэдклифф
5. Первые газеты в Российской империи
6. Реалии и парадоксы аграрной политики
7. Тема 6 Правове становище об~єднань підприємств
8. Пути повышения эффективности скотоводства.html
9. ТЕМА- Основы рационального питания
10. Лекции по курсу Политология для студентов всех специальностей Под редакцией В
11. судебный to reign ~ царствовать the House of Commons тж
12. практикум з криміналістики Студента ки ______________________ Навчальна група __________ курс _______
13. на тему- по направлению подготовки 100101 Гостиничное дело профиль Санаторнокурортная деятельност
14. задание- 1213 Вариант 1 Аметова А Дидковская Т Керимова К Костенко И Митина М
15. Статья- Розробка моніторингових досліджень стану середніх річок степового Придніпровя (на прикладі річки Інгулець)
16. Страх вошел в душу мою и трепет в кости мои писал позднее Иван
17. идти v дуть веять
18. реферат дисертації на здобуття наукового ступеня кандидата технічних наук Київ ~
19. C Sunrise Vlley Drive Reston Virgini 20191 USРедакторсоставитель Малькольм Ф
20. Тема 8. Правові засади захисту національного товаровиробника в зовнішньоекономічних відносинах Мета занят