Главная страница
Библиотека (скачать книги)
Скачать софт
Введение в программирование
Стандарты для C++
Уроки по C#
Уроки по Python
HTML
Веб-дизайн
Ассемблер в среде Windows
ActiveX
Javascript
Общее о Линукс
Линукс - подробно
Линукс - новое
Delphi
Паскаль для начинающих
Турбопаскаль
Новости
Партнеры
Наши предложения
Архив новостей





Компонент TStoredProc

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

 

Имя базы данных, с которой связывается хранимая процедура, содержится в свойстве DatabaseNarae. А имя хранимой процедуры содержится в свойстве StoredPrосName. При разработке в инспекторе объектов значение свойства выбирается из списка хранимых процедур, получаемого с сервера при соединении с базой данных.

 

В свойстве Params содержится массив входных и выходных параметров данной хранимой процедуры. Метод ParamByName возвращает параметр процедуры, если методу передано наименование этого параметра. А метод ЕхесРгос инициирует выполнение хранимой процедуры на сервере.

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

 

Стоит рассмотреть небольшой пример использования хранимых процедур. В качестве сервера будет использован InterBase, поставляющийся вместе с Delphi. На форму нужно поместить компоненты TDatabase, TStoredProc, TMemo и кнопку TBitBtn. При установке InterBase создает псевдоним для доступа к локальному серверу — IBLocal. Он указывает на демонстрационную базу данных EMPLOYEE.GDB. Этот псевдоним мало выбрать в списке AliasName компонента TDatabase. Свойству DatabaseName компонента TDatabase нужно присвоить значение MyTestDB. В свойстве Params потребуется ввести два параметра, как указано в табл. 3.3.

 

Таблица 3.3.
Параметры, содержащие логин и пароль для доступа к серверу Irtterbase

 

Key

 

Value

 

USER NAME

 

SYSDBA

 

PASSWORD

 

masterkey

 

Указанные имя пользователя и пароль устанавливаются сервером по умолчанию и в дальнейшем могут быть изменены. Для свойства LoginPrompt нужно установить значение False. В результате сервер не будет запрашивать логин и пароль при каждом соединении. Затем необходимо установить соединение с базой данных. Для этого достаточно свойству Connected присвоить значение True.

 

Пришло время связать компоненты TDatabase и TStoredProc. Для этого в свойстве DatabaseName компонента TStoredProc нужно выбрать из списка значение HyTestDB. Теперь в свойстве StoredProcNarae надо выбрать из списка хранимую процедуру ORG_CHART. В методе-обработчике кнопки останется ввести код, представленный в листинге 3.2.

 

Листинг 3.2. Использование компонента TStoredProc

procedure TForml.ExecBtnClicktSender: TObject);
var I : Integer;
begin
with StoredProcl do begin
StoredProcl.ExecProc;
Memol.Lines.Clear;
for I:= 0 to Paramount - 1 do begin
Memol.Lines.Add(Params[l].AsString);
end;
end;
end;

 

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

Рис. 3.12. Пример вызова хранимой процедуры

 



   
 

Библиотека программиста. 2009.
Администратор: admin@programmer-lib.ru