Estou tentando executar a query abaixo, porém o MySql não reconhece o valor da variável.
SET @MES_ANTERIOR="MARCO";
SET @MES="ABRIL";
SET @MOVIMENTACAO="MOVIMENTACAO_CEF_";
SET @LEVANTAMENTO="CEF_LEVANTAMENTO_";
SET @DEPOSITO="CEF_DEPOSITO_";-- INICIO PROCEDURE SALDO_MES ANTERIOR --
DELIMITER $$
DROP PROCEDURE IF EXISTS SALDO_MES_ANTERIOR $$
CREATE PROCEDURE SALDO_MES_ANTERIOR ()BEGIN
DECLARE MES_ANTERIOR VARCHAR(30) DEFAULT @MES_ANTERIOR;
DECLARE MOVIMENTACAO VARCHAR(30) DEFAULT CONCAT(@MOVIMENTACAO,@MES);
DECLARE MOVIMENTACAO_ANTERIOR VARCHAR(30) DEFAULT CONCAT(@MOVIMENTACAO,@MES_ANTERIOR);
UPDATE MOVIMENTACAO AS TAB_MOV
INNER JOIN MOVIMENTACAO_ANTERIOR AS TAB_MOV_ANT ON TAB_MOV_ANT.IDENT = TAB_MOV.IDENT
SET TAB_MOV.MARCO = TAB_MOV_ANT.MARCO
WHERE TAB_MOV.MARCO IS NULL;END$$;
DELIMITER $$;-- FIM PROCEDURE SALDO_MES ANTERIOR --
Já troquei aspas simples por aspas duplas e vice-versa, já coloquei := e apenas = para atribuir valor a variável.
O que acontece é que o MySql não está identificando o valor das variáveis, primeiramente o valor da variável MOVIMENTACAO que seria "MOVIMENTACAO_CEF_ABRIL", pois concatenei o valor das variáveis @MOVIMENTACAO e @MES.
Ele entende que estou tentando atualizar a tabela MOVIMENTACAO, ou seja não está vendo a variável MOVIMENTACAO e seu conteúdo.
Pergunta
hebertlcost
Boa tarde á todos.
Estou tentando executar a query abaixo, porém o MySql não reconhece o valor da variável.
Já troquei aspas simples por aspas duplas e vice-versa, já coloquei := e apenas = para atribuir valor a variável.
O que acontece é que o MySql não está identificando o valor das variáveis, primeiramente o valor da variável MOVIMENTACAO que seria "MOVIMENTACAO_CEF_ABRIL", pois concatenei o valor das variáveis @MOVIMENTACAO e @MES.
Ele entende que estou tentando atualizar a tabela MOVIMENTACAO, ou seja não está vendo a variável MOVIMENTACAO e seu conteúdo.
O que fazer nesse caso?
Muito Obrigado.
Hebert Luiz Costa
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.