Главная страница
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.027 c
4-1143107447
Димон
2006-03-23 12:50
2006.07.16
Как передать данные на кассовый аппарат через COM?


3-1147454543
skichyp
2006-05-12 21:22
2006.07.16
не могу законнектиться с локального


4-1144095343
Turbid
2006-04-04 00:15
2006.07.16
Проблемма с глобальными переменными в процедуре хука


6-1141971797
WondeRu
2006-03-10 09:23
2006.07.16
TServerSocket внутри COM-сервера.


15-1150439258
Ega23
2006-06-16 10:27
2006.07.16
Просто любопытно - как Query Analyzer написан?