Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 9.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
423.94 Кб
Скачать

Var Params: tStringList;

begin

Params:=TStringList.Create;

try

Params.Add('SERVER NAME=d:\ibData\registration.gdb');

Params.Add('USER NAME=SYSDBA');

Params.Add('PASSWORD=masterkey');

Sessionl.AddAlias('ibData', 'INTRBASE', Params);

finally

Params.Free;

end;

end;

В ней создается псевдоним ibData для работы с удаленной БД InterBase. Для БД задано три параметра: путь, имя и пароль пользователя. Для определения параметров в приложении динамически создается список Params типа TStringList. Заполнение и удаление списка также выполнено динамически. При заполнении списка и создании псевдонима выполняется обработка исклю­чительных ситуаций. При их возникновении в любом случае будет удален дина­мически созданный СПИСОК Params.

Процедура DeleteAlias (const Name: String) удаляет псевдоним, указанный параметром Name. Например:

procedure TForml.Button4Click(Sender: TObject);

begin

Sessionl.DeleteAlias(Editl.Text) ;

end;

Здесь удаляется псевдоним, имя которого указано в компоненте Editl. Если указанный псевдоним отсутствует, то процедура DeleteAlias не выполняет ни­каких действий.

Методы GetDriverNames И GetDriverParams обеспечивают получение информа­ции о драйверах BDE и их параметрах, соответственно, а методы AddDriver и DeleteDriver — добавление и удаление драйверов.

3.4. Соединение с базой данных из приложения

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

Пусть на форме размещены сетка DBGridl, источник данных DataSourcel и на­бор данных Queryl. Напомним, что в качестве набора данных следует выбирать компонент Query и ему подобные, а не компонент Table.

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

  • создать псевдоним БД;

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

Псевдоним для работы с удаленной БД удобно создать с помощью рассмотрен­ной ранее программы BDE Administrator. Для сервера InterBase псевдоним имеет тип intrbase. Для псевдонима нужно задать следующие параметры:

  • имя пользователя user name — sysdba;

  • расположение БД server name — для локального сервера InterBase это путь к БД, для удаленного сервера этот путь прописан в файле hosts, размещенном в каталоге WINDOWS;

  • языковый драйвер LANGDRIVER — Pdox ANSI Cyrillic.

В качестве примера создадим псевдоним ibData для доступа к БД registration.gdb, размещенной в каталоге d:\ibDate. Параметры псевдонима показаны на рис. 10.5.

Собственно соединение с БД выполняется с помощью компонента Database, рассмотренного в предыдущем разделе. Разместим на форме компонент Databasel. Для соединения с БД, обозначенной псевдонимом ibData, свойствам компонентов Databasel и Queryl нужно установить значения, показанные в табл. 10.2.

Таблица 10.2

Свойства компонентов, используемых для соединения с БД

Компонент

Свойство

Значение

Примечание

Databasel

AliasName

ibData

Выбирается из списка

DatabaseName

ibDataBD

Вводится разработчиком

Queryl

DatabaseName

ibDataBD

Выбирается из списка

Соединение с БД устанавливается следующими способами:

  • через открытие набора данных Queryl;

  • путем установки значения True свойству Connected компонента Databasel.

Оба способа по своим результатам являются эквивалентными и взаимозависи­мыми. Так, при открытии набора данных, например, установкой значения True его свойству Active, свойство Connected компонента Database автоматически принимает это же значение.

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

. Рис. 10.5. Параметры псевдонима БД

5