powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема с параметром в запросе
7 сообщений из 7, страница 1 из 1
Проблема с параметром в запросе
    #32368874
Void!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть такой запрос
select BRANCH.*,
(select "VALUE" from branch_stat
where branch.id = branch_stat.branch_id
and branch_stat.date_data =:BeginDate + 1 ) day1,
(select "VALUE" from branch_stat
where branch.id = branch_stat.branch_id
and branch_stat.date_data = :BeginDate + 2 ) day2,
...........
...........
(select "VALUE" from branch_stat
where branch.id = branch_stat.branch_id
and branch_stat.date_data = :BeginDate + 31
and branch_stat.date_data < :EndDate ) day31,
CURRENT_TIMESTAMP
from BRANCH
where id=:id
он без условия where id=:id исполняется нормально а с этим условием пишет
Incompatible column/host variable data type.
Dynamic SQL Error.
SQL error code = -303.
conversion error from string "9".

Что же делать?
...
Рейтинг: 0 / 0
Проблема с параметром в запросе
    #32368891
Void!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Аналогичный запрос

select BRANCH.*,
(select "VALUE" from branch_stat
where branch.id = branch_stat.branch_id and branch_stat.date_data =
CURRENT_DATE - EXTRACT(DAY FROM CURRENT_DATE) + 1 ) day1,
...........
...........
(select "VALUE" from branch_stat
where branch.id = branch_stat.branch_id
and branch_stat.date_data = CURRENT_DATE - EXTRACT(DAY FROM
CURRENT_DATE) + 31
and 31 < 33 - EXTRACT(DAY FROM CURRENT_DATE - EXTRACT(DAY
FROM CURRENT_DATE) + 32) ) day31,
CURRENT_TIMESTAMP
from BRANCH
where ID = :ID

Выполняется без ошибок
...
Рейтинг: 0 / 0
Проблема с параметром в запросе
    #32369261
hyh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй отделить = пробелами и поставить branch.id вместо id
И вообще - он же Datatype грит, посмотри что ты этому параметру присваиваешь.
А в виде ХП это всё не было бы быстрее?
...
Рейтинг: 0 / 0
Проблема с параметром в запросе
    #32369392
Void!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробовал и отделять пробелами "=", и ставил branch.id.
Этот запрос стоит в IBDataset как RefreshSQL и должен бы получать ID записи,
но даже из IBExpert задаю параметр цифрой - тот же результат.

А что касается скорости то это и так работает быстро - без ограничения where id=:id пользователь никакой задержки не замечает. Кроме того, я не уверен что через ХП это будет быстрее.

P.S. А вызов ХП можно ставить в RefreshSQL? Надо будет попробовать, возможно это будет единственным выходом :(
...
Рейтинг: 0 / 0
Проблема с параметром в запросе
    #32369596
hyh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конечно можно - select чтото из proc_name(pars)
Пробовал в Эксперте писать where ID = 'зн-е' и не работало?
...
Рейтинг: 0 / 0
Проблема с параметром в запросе
    #32369920
Void!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, если в IBExpert писать where id = 9 или where id = '9' то исполняется правильно, а вот если where id=:id , а потом задать значения параметров, то не работает
...
Рейтинг: 0 / 0
Проблема с параметром в запросе
    #32370008
S.G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
S.G
Гость
Кажется ругается на то, что символы в lowercase.
ставь ID вместо id, это имеет значение.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Проблема с параметром в запросе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]