![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как передать в IB через SQLQuery параметр NULL [D6, IB6.x]
AlexLumpov © (2002-10-28 23:19:00)Уважаемые мастера!
Проблема следующая. Нужно выполнять изменение данных в таблице
TSQLQuery1.SQL = "
UPDATE ORDERS
SET DATE_FIELD = :DATE_FIELD,
CODE = :CODE,
VALID_UPTO = :VALID_UPTO,
PAYS_LEFT = :PAYS_LEFT,
ATTEMPTS = :ATTEMPTS,
STATE = :STATE
WHERE ORDER_ID = :ORDER_ID"
но проблема в том что поле ATTEMPTS может быть NULL,
в этом случае дельфи ругается "No value for parametr "ATTEMPTS"".
Два компонента делать не хочется.
Что посоветуете ???
AlexLumpov (2002-10-29 13:18:00) [1]Ну как говорится "Всем спасибо - все свободны"
Разобрался я в чем тут фишка. (пришлось в исходники залезть)
Если значение не присвоено то Delphi не может понять какого типа параметр, от того и ругается.
Если указать явно тип параметра (в даннм случае ftInteger) то все прекрасно работает.
Советчик (2002-10-29 12:49:00) [2]может быть и можно, но тут я тебе не советчик...
AlexLumpov (2002-10-29 12:47:00) [3]to Советчик
ОК спасибо за инфрмацию. Щас поисследую.
А что в dbExpress никак? Просто меня сроки поджимают а переводить все на другие компоненты не так то быстро. Все остальное в dbExpress меня устраивает (пока что). Может быть можно что то сделать с ними?
Советчик (2002-10-29 12:44:00) [4]ну под линуксом есть FIBPlus
AlexLumpov (2002-10-29 12:41:00) [5]а скорее всего проге придется под линуксом крутиться
AlexLumpov (2002-10-29 12:40:00) [6]to Johnmen
к сожалению нету у меня IBX под Linux
AlexLumpov (2002-10-29 12:38:00) [7]to Советчик
Ну там же указано TSQLQuery
to Alexandr
а метода asVariant я там вообще не нашел
Johnmen (2002-10-29 12:38:00) [8]Компоненьы, ясное дело, из dbExpress, вот только ЗАЧЕМ именно они ???!!! Неужели они лучше "родных" IBX...
Советчик (2002-10-29 12:32:00) [9]Я вмешаюсь ничего?
при каком?
Alexandr же 2 варианта привел...
А хотя я наверное понял!
Это у тебя кривые компоненты доступа. Через что работаешь-то?
AlexLumpov (2002-10-29 12:26:00) [10]to Alexandr
Вот именно при таком и пишет "No value for parametr "ATTEMPTS"".
Alexandr (2002-10-29 07:13:00) [11]ParamByName("ATTEMPTS").Clear
или
ParamByName("ATTEMPTS").AsVariant:=null