"A K" <[EMAIL PROTECTED]> сообщил/сообщила в
новостях следующее: news:[EMAIL PROTECTED]
> Лет семь уже работаю с интербейзом, но только на днях, благодаря данной
> конференции, узнал о том, что запрос можно не анпрепэрить при завершении
> транзакции. А ведь компоненты IBX именно так и поступают!
рекомендую перед операцией провести натурный эксперимент:
заремарить в TIBCustomDataSet.DoBeforeTransactionEnd
все FXXXXXXX.FreeHandle и сэмулировать работу
тройного количества пользователей.
> Поскольку запрос можно держать подготовленным на время всего коннекта,
а часто ли это нужно?
имхо, это требуется только при цикличном выполнении запроса.
но даже если вы не сделали препаре перед циклом самостоятельно,
ibx сделает это за вас.
и даже если вы в каждой итерации цикла будете делать unprepare,
то ibx не освободит хэндл, пока не завершится транзакция :-)
> почему IBX анпрепэрит запрос, хотя
> этого можно было бы и не делать? (один ответ я знаю: на тот случай, если
> изменятся метаданные)
ответ неправильный :-)
метаданные могут измениться независимо от препаренности запроса.
правильный находится в шапке исходников:
{ InterBase Express is based in part on the product }
{ Free IB Components, written by Gregory H. Deatz for }
{ Hoagland, Longo, Moran, Dunst & Doukas Company. }
> 2) насколько для сервера критично количество подготовленных запросов? если
> их будет порядка 5 000? и "висеть" они будет на протяжении рабочего дня 8-10
> часов?
имхо, время не критично. критичны количество и их объём.
--
Фёдоров Евгений.
ЗАО "Трест-М". Екатеринбург.