Как правильно вызывать TpFIBStoredProc.Preapare?

IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.

Модератор: kdv

Ответить
Naidenov
Сообщения: 59
Зарегистрирован: 18 янв 2005, 17:38

Как правильно вызывать TpFIBStoredProc.Preapare?

Сообщение Naidenov » 14 фев 2007, 14:16

Доброго времени суток.

Давече, в процессе переработки кода своего коллеги, у меня возник вопрос: как правильно вызывать метод Preapare для TpFIBStoredProc? Точнее в какой последовательности: до того, как заполнены все параметры ХП или после (непосредственно перед вызовом ExecProc)? Или это не имеет значения?

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Сообщение Dimitry Sibiryakov » 14 фев 2007, 14:34

Любое обращение к параметрам автоматически вызывает неявный Prepare. Помедитируй над этим.

Naidenov
Сообщения: 59
Зарегистрирован: 18 янв 2005, 17:38

Сообщение Naidenov » 14 фев 2007, 14:48

Dimitry Sibiryakov писал(а):Помедитируй над этим.
:lol:
Просто интересно, как распределяет ресурсы сервер и как ведет себя оптимизатор запросов в этих двух случаях явного вызова?

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Сообщение Dimitry Sibiryakov » 14 фев 2007, 14:59

Если ты еще не видел исходников - загляни туда. Откроешь много интересного.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 14 фев 2007, 15:01

оптимизатор никак не ведет себя при "двух вызовах". План запроса он строит на Prepare.

Ответить