Форум: "Базы";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
ВнизПроблема с execute statement в FB 1.5.1 Найти похожие ветки
← →
a3a3ello (2004-11-25 17:01) [0]В ХП FB 1.5.1 глючит следующий фрагмент.
begin
txt_sql = "select count(*) from table_try";
for execute statement main_sql
into :kolichstvo do
begin
suspend;
end
Выдается ошибка
Eсли сделать то же самое без execute statement то процедура работает. Если в переменной txt_sql заменить count(*) на что нибудь другое(sum(), avg(), просто поле) , то тоже все работает.
Что это можт быть ?
Спасибо
← →
stud © (2004-11-25 17:18) [1]
> main_sql
это что? имя таблицы или?
← →
a3a3ello (2004-11-25 17:27) [2]я извиняюсь main_sql и txt_sql одно и то же. Замучился уже :(
kolichstvo переменная типа bigint.
begin
txt_sql = "select count(*) from table_try";
for execute statement txt_sql
into :kolichstvo do
begin
suspend;
end
← →
Johnmen © (2004-11-25 17:35) [3]А замени * на имя поля, которое PK.
← →
stud © (2004-11-25 17:42) [4]вот реально работающий пример
for execute statement "SELECT trandate,count(*) FROM " ||tn||
" WHERE trantime<"||"""15:00"""||
" group by trandate order by trandate" into :trandate_,:do15
← →
a3a3ello (2004-11-25 17:50) [5]* заменял на все, что мог.
2stud Приятно, что у кого-то это работает, значит шансы есть. А какая у тебя версия сервера?
Вот текст ошибки. Может поможет
Unsuccessful execution caused by system error that does not preclude successful execution of subsequent statements.
numeric value between 0 and 32767 inclusive required.
← →
stud © (2004-11-25 17:55) [6]сервер 1,5
for execute statement "SELECT count(*) FROM " ||tn
into :cc
do suspend;
специально проверил - эта конструкция работает.
а какой тип параметров?
← →
stud © (2004-11-25 17:58) [7]tn - varchar имя таблицы
cc - integer
← →
Johnmen © (2004-11-25 18:03) [8]>a3a3ello (25.11.04 17:50) [5]
Это из-за того, что вых.парам у тебя bigint.
Сделай int и не мучайся...:)
← →
a3a3ello (2004-11-25 18:05) [9]2stud
параметр kolichstvo - bigint
переменная txt_sql varchar(500)
← →
a3a3ello (2004-11-25 18:15) [10]Уррррррра.
Сделал int и заработало. Интересно это глюк или фича. И почему все кроме count() с bigint-ом работало.
Всем спасибо.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.04 c