ОБСУЖДЕНИЕ

Переменная в Update

1 ответов 4,3 тыс.
AI-выжимка обсуждения скоро

Краткие тезисы обсуждения со ссылками на ключевые ответы появятся здесь.

Статус
Закрыто для дальнейших ответов.
Автор темы
всем привет возникла такая проблема что сервер неможет определить тип переменной
может ктонибуть помоч?
Код:

Код:
UPDATE sklad 
SET kolvotov=( 
SELECT s.kolvotov-(r.kolvotov * (cast((:kol) AS integer))) 
FROM sklad s 
JOIN recept r ON r.idtov=s.idtov 
WHERE r.idblud = :INidblud)

текст ошибки

Dynamic SQL Error.
SQL error code = -804.
Data type unknown.
 
задача UPDATE одной таблици информацией из другой решилась реализацией хранимой процедуры



Код:
SET TERM ^;

CREATE PROCEDURE NEW_PROCEDURE (
kol integer,
inidblud integer)
as
declare variable b float;
declare variable a float;
begin
for select s.kolvotov-(r.kolvotov*:kol) , s.idtov
FROM sklad s
join recept r on r.idtov=s.idtov
WHERE r.idblud = :INidblud
into :a, :b
do 
begin 
update sklad
set kolvotov = :a
where idtov = :b;
end
suspend;
end^

SET TERM; ^

GRANT SELECT,UPDATE ON SKLAD TO PROCEDURE NEW_PROCEDURE;

GRANT SELECT ON RECEPT TO PROCEDURE NEW_PROCEDURE;

GRANT EXECUTE ON PROCEDURE NEW_PROCEDURE TO SYSDBA;
 
Статус
Закрыто для дальнейших ответов.