FIB+ ошибка при присвоении занчения параметру

Бектуров Роман
Дата: 08.07.2009 08:26:47
День добрый !

FB 2.1, есть ХП с параметром "data" BLOB SUB_TYPE 1 SEGMENT SIZE 80, компоненты доступа FIB+ 6.9.6. На клиенте присваиваю параметру текст ParamByName('data').Value := MyText. На "больших" текстах, получаю ошибку "Value for WideString Parameter <имя ХП> too long". Как решить проблему ?
Dimitry Sibiryakov
Дата: 08.07.2009 11:47:28

Бектуров Роман
Как решить проблему ?

Use BLOBStream, Luke!..

Posted via ActualForum NNTP Server 1.4

Бектуров Роман
Дата: 08.07.2009 12:14:37
аха, спасибо, через Parameter.LoadFromStream вроди проблем нет, однако теперь другая проблема, как узнать что данный параметр - BLOB SUB_TYPE 1 ?
MikeDD
Дата: 08.07.2009 14:23:15
Бектуров Роман
аха, спасибо, через Parameter.LoadFromStream вроди проблем нет, однако теперь другая проблема, как узнать что данный параметр - BLOB SUB_TYPE 1 ?


Query.ParamByName().IsBlob?
NextMan
Дата: 08.07.2009 14:35:38
Бектуров Роман
аха, спасибо, через Parameter.LoadFromStream вроди проблем нет, однако теперь другая проблема, как узнать что данный параметр - BLOB SUB_TYPE 1 ?

Никак. Если в конкретном компоненте (например, TpFIBDataSet), имя поля в select совпадает с именем параметра в insert/update, то - после prepare селекта, по типу поля.
Dimitry Sibiryakov
Дата: 08.07.2009 15:07:09

NextMan
после prepare селекта, по типу поля.

IB/FB, вообще-то, в этом аспекте умнее Оракула и способно определить
типы параметров без гадания по именам полей. То, что аффтар не способен
прочитать список свойств параметра это его личная беда.

Posted via ActualForum NNTP Server 1.4

Бектуров Роман
Дата: 08.07.2009 17:43:43
MikeDD
Бектуров Роман
аха, спасибо, через Parameter.LoadFromStream вроди проблем нет, однако теперь другая проблема, как узнать что данный параметр - BLOB SUB_TYPE 1 ?


Query.ParamByName().IsBlob?


а вот и нет, было б так просто - не спрашивал, IsBlob = false
Бектуров Роман
Дата: 08.07.2009 17:45:37
NextMan
Бектуров Роман
аха, спасибо, через Parameter.LoadFromStream вроди проблем нет, однако теперь другая проблема, как узнать что данный параметр - BLOB SUB_TYPE 1 ?

Никак. Если в конкретном компоненте (например, TpFIBDataSet), имя поля в select совпадает с именем параметра в insert/update, то - после prepare селекта, по типу поля.


селекта нет, вызывается хранилка через exceute, т.е. тип параметра узнать никак нельзя ?
Бектуров Роман
Дата: 08.07.2009 17:47:25
Dimitry Sibiryakov

NextMan
после prepare селекта, по типу поля.

IB/FB, вообще-то, в этом аспекте умнее Оракула и способно определить
типы параметров без гадания по именам полей. То, что аффтар не способен
прочитать список свойств параметра это его личная беда.


дык может поделитесь опытом и расскажите как определить ?
NextMan
Дата: 08.07.2009 17:56:13
Ты бы хоть запрос привел...