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

  • Автор темы bratec
  • Дата начала
Статус
Закрыто для дальнейших ответов.
B

bratec

всем привет возникла такая проблема что сервер неможет определить тип переменной
может ктонибуть помоч?
Код:

Код:
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.
 
B

bratec

задача 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;
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!