действительно близко к запуску моей первой хранимой процедуры. Это один компилирует, но когда я запускаю его с call test.fttest5('YEAR');
он выдает ошибкуЧто случилось с этой хранимой процедурой?
SQL Штат: 22001 Vendor Код: -303 Сообщение: [SQL0303] хост переменной * N не совместимы. Причина. , , , , : FETCH, SELECT, CALL, SET, VALUES INTO, GET DIAGNOSTICS, GET DESCRIPTOR или SET DESCRIPTOR не могут быть выполнены, потому что тип данных переменной хоста * N несовместим с типом данных соответствующего элемента списка.
Также как указать неограниченный тип данных в моей хранимой процедуре? Я пробовал DECLARE temp VARCHAR(MAX);
, но это не сработало. Моя платформа ISeries DB2 V5R4.
create procedure test.fttest5
(IN ftExpression CHARACTER(30))
language sql
reads sql data
dynamic result sets 1
begin
declare cmd VARCHAR(50);
declare whr VARCHAR(50)
;
declare x cursor for sl;
set cmd='select * from testSchema.tempTable' ;
if ftExpression IS NOT NULL
THEN
set whr= ftExpression;
END IF;
set cmd=cmd || CASE WHEN whr IS NULL THEN '' ELSE ' ORDER BY ' || whr END;
prepare sl from cmd;
open x;
return;
end
;
Спасибо, я посмотрю, что вы сказали, и продолжайте эту тему! –
понял, спасибо. Вы были на месте. –