Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola a Todos e saudacoes, meu nome e Ricardo Scarpim e estou tentando criar uma stored procedure no Mysql que me retorne todos os campos da tabela de fornecedores.
Na verdade eu tenho um parametro de entrada, o codigo do fornecedor e varios parametros de saida, os campos da tabela de fornecedores, estou fazendo alguns testes pois estou estudando o Mysql, a duvida e a seguinte, como retornar varios parametros do tipo OUT na stored procedure, eis o codigo que tenho.
DELIMITER $$
CREATE DEFINER=root@localhost PROCEDURE sp_pesq_produtos(
IN codigo INT,
OUT for_codigo INT,
OUT for_descricao VARCHAR(100),
OUT end_endereco VARCHAR(100),
OUT cid_cidade VARCHAR(30),
OUT for_telefone VARCHAR(20)
)
BEGIN
SELECT * FROM pro_fornecedores
/ Relacionamento entre a Tabela de ENDERECO /
LEFT OUTER JOIN end_endereco ende ON (ende.end_codigo = for_end_codigo)
/ Relacionamento entre a Tabela ENDERECO e a Tabela CIDADE /
LEFT OUTER JOIN end_cidade cid ON (cid.cid_codigo = ende.cid_codigo)
WHERE (for_codigo = codigo)
INTO for_codigo,
for_descricao,
end_endereco,
cid_cidade,
for_telefone;
END
Ao tentar executar esta me dando o seguinte erro :
Error Code: 1222. The used SELECT statements have a different number of columns
estou chamando a stored assim :
CALL sp_pesq_produtos(1,@codigo,@nome,@endereco,@cidade,@telefone)
Muito obrigado a todos um abraco.
Carregando comentários...