Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.16;
Скачать: CL | DM;

Вниз

передать параметр в IBDataSet   Найти похожие ветки 

 
mr.il ©   (2006-05-16 10:41) [0]

Есть запрос:
select *
from PERSONS pers
where upper(pers.PERSON) like upper(:PERS_Name) or
:PERS_Name = "ALL"
order by pers.PERSON

передаю параметр

 IBDS_PERSONS.Close;
 IBDS_PERSONS.Params.ByName("PERS_Name").AsString := "ALL";
 IBDS_PERSONS.Open;

а в ответ: "Incorrect values within SQLDA structure".
Весь хелп перерыл понять ошибку не могу.


 
Sergey13 ©   (2006-05-16 10:45) [1]

IBDS_PERSONS.Params.ParamByName("PERS_Name").AsString := "ALL";


 
Desdechado ©   (2006-05-16 10:49) [2]

есть подозрение, что параметров 2, хоть и с одинаковым именем
и что присваивать значение нужно обоим


 
Sergey13 ©   (2006-05-16 11:00) [3]

У меня вот так прошло вроде

select *
from PERSONS pers
where upper(pers.PERSON) like upper(:PERS_Name) or :PERS_Name = cast("ALL" as varchar(30))


 
mr.il ©   (2006-05-16 14:07) [4]

Desdechado © писал
есть подозрение, что параметров 2, хоть и с одинаковым именем...

Оказалось, в точку. Блин так не очевидно. Искал решение проблемы в одном месте, а оказалось проблема в другом. Надо это включить в фак.

where upper(pers.PERSON) like upper(:PERS_Name) or
:PERS_Name1 = "ALL"
.....
IBDS_PERSONS.Params.ByName("PERS_Name").AsString := "ALL";
IBDS_PERSONS.Params.ByName("PERS_Name1").AsString := "ALL";


 
Johnmen ©   (2006-05-16 14:22) [5]

>Надо это включить в фак.

Зачем из хелпа в фак?


 
ANB ©   (2006-05-16 14:58) [6]

ЗЫ. Вот всегда считал, что лучше ораклом пользоваться.


 
mr.il ©   (2006-05-16 15:39) [7]

Johnmen ©   (16.05.06 14:22) [5]
>Надо это включить в фак.
Зачем из хелпа в фак?


Может я не то читаю, но в хелпе по TIBXSQLDA ничего не сказано про "гемор" с повторным использованием параметра в запросе.

ANB ©   (16.05.06 14:58) [6]
ЗЫ. Вот всегда считал, что лучше ораклом пользоваться.

А если это небольшой проект?


 
Desdechado ©   (2006-05-16 15:39) [8]

ANB ©   (16.05.06 14:58) [6]
дело не в СУБД, а в особенностях реализации отдельных компонентов
некоторые из них считают, что нужно все одноименные параметры присваивать скопом, некоторые - только первый попавшийся


 
Johnmen ©   (2006-05-16 16:06) [9]

Params or Parameters property to assign values to a parameter based on the parameter’s ordinal position within the SQL statement.

Это прямой намёк.



Страницы: 1 вся ветка

Текущий архив: 2006.07.16;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.029 c
15-1150695570
Ega23
2006-06-19 09:39
2006.07.16
С Днём рождения! 18 июня


9-1131821987
Кефир87
2005-11-12 21:59
2006.07.16
gluProject вызывает Run time error?!


3-1147761663
mr.il
2006-05-16 10:41
2006.07.16
передать параметр в IBDataSet


3-1147780912
novill
2006-05-16 16:01
2006.07.16
Как очистить строку от лидирующих/завершающих непечатных символов


9-1131908625
Conferno
2005-11-13 22:03
2006.07.16
GLScene - GLPortal и GLFreeForm