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

Тема в разделе "SQL", создана пользователем bratec, 30 май 2010.

Статус темы:
Закрыта.
  1. bratec

    bratec Гость

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

    Код (Text):
    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.
     
  2. bratec

    bratec Гость

    задача UPDATE одной таблици информацией из другой решилась реализацией хранимой процедуры



    Код (Text):
    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;
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей