Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

vagnerC

Procedure

Recommended Posts

Pessoal, estou criando uma procedure.

 

Quando tento recuperar dois valores no SELECT dá errado.

 

DELIMITER //
DROP PROCEDURE IF EXISTS PROC_folha_pagamento2 //
CREATE PROCEDURE PROC_folha_pagamento2(
IN form_data					CHAR(10), 
IN form_id_funcionario				MEDIUMINT,
OUT total_liquido 				DECIMAL(10,2))
BEGIN
	DECLARE var_numero_dependente		   	TINYINT(4);
	DECLARE var_salario_familia			TINYINT(4);

	SELECT 
	[color="#FF0000"]dependente 					INTO var_numero_dependente,
	salario_familia					INTO var_salario_familia[/color]
	FROM funcionario
	WHERE id_funcionario 				= form_id_funcionario;
END;

Quando tento recuperar apenas um valor dá certo:

 

DELIMITER //
DROP PROCEDURE IF EXISTS diariodasle_7.PROC_folha_pagamento2 //
CREATE PROCEDURE diariodasle_7.PROC_folha_pagamento2(
IN form_data					CHAR(10), 
IN form_id_funcionario				MEDIUMINT,
OUT total_liquido 				DECIMAL(10,2))
BEGIN
	DECLARE var_numero_dependente		   	TINYINT(4);
	DECLARE var_salario_familia			TINYINT(4);

	SELECT 
	[color="#FF0000"]salario_familia					INTO var_salario_familia[/color]
	FROM funcionario
	WHERE id_funcionario 				= form_id_funcionario;
END;

Alguém pode me dar alguma dica?

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não retorna nenhum erro, "só" não preenche as variáveis com os valores.

SELECT 
dependente            INTO var_numero_dependente,
salario_familia       INTO var_salario_familia
FROM funcionario
WHERE id_funcionario  = form_id_funcionario;

Eu gostaria que em apenas 1 consulta, as variáveis(var_numero_dependente/var_salario_familia) fossem preenchidas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.