PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

Fórum Diferença da Procedure MySQL x Firebird #559761

01/08/2016

0

Bom dia pessoal,

Andei dando uma pesquisada e não encontrei um exemplo como queria.
Hoje tenho um banco de dados Firebird, e estou trocando para MySQL. Gostaria de entender as diferenças entre a sintaxe de um e outro. Como exemplo trouxe uma Store Proedure da base firebird e gostaria de saber como ficaria a mesma procedure em Mysql. Dessa fora vou consegui entender melhor as diferenças.


ALTER PROCEDURE ATUALIZA_ESTOQUE_ENTRADA (
    RCODENTRADA INTEGER)
AS
declare variable VCODENTRADA integer;
declare variable VCODCLIENTE integer;
declare variable VCODOBRA integer;
declare variable VCODPROD integer;
declare variable VQTDE float;
declare variable VVRUNITARIO numeric(15,2);
declare variable VTIPO char(1);
declare variable VSTATUS varchar(20);
begin

    FOR SELECT I.codentrada, I.codobra, I.codproduto, I.quantidade, I.vrunitario
    FROM ITENSENTRADA I
    WHERE I.codentrada = :rcodentrada
    INTO :vcodentrada, :vcodobra, :vcodprod, :vqtde, :vvrunitario do

    BEGIN
        vtipo = 'E';

        SELECT E.codcliente, e.status
        FROM ENTRADA e
        WHERE E.codentrada = :rcodentrada
        INTO :vcodcliente, :vstatus;

        if (:vstatus = 'ABERTA' or :vstatus = 'FINALIZADA') then exit;
        else
        begin
          UPDATE entrada e
          SET e.status = 'FINALIZADA'
          WHERE E.codentrada = :rcodentrada;

          UPDATE PRODUTO P SET
          P.estoque = P.estoque + :vqtde,
          P.vrunitario = :vvrunitario
          WHERE P.codproduto = :vcodprod;


          INSERT INTO HISTORICOCLIENTES(CODMOV, CODCLIENTE, CODPRODUTO, QTDE, CODOBRA, TIPO) VALUES (:vcodentrada, :vcodcliente, :vcodprod, :vqtde, :vcodobra, :vtipo);
          INSERT INTO HISTORICOPRODUTO (CODMOV, CODOBRA, CODCLIENTE, CODPROD, QTDE, VALOR, TIPO) VALUES (:vcodentrada, :vcodobra, :vcodcliente, :vcodprod, :vqtde, :vvrunitario, :vtipo);
         end

    END
END^

Casa

Casa

Responder

Posts

02/08/2016

Casa

Ninguem?
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar