1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Stored Procedure não reconhece valor das variaveis

Boa tarde á todos.

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.

O que fazer nesse caso?

Muito Obrigado.

Hebert Luiz Costa

  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

0 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags mysql sql ou faça a sua própria pergunta.