Ir para conteúdo

POWERED BY:

Arquivado

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

rodizs

Procedure

Recommended Posts

Estou tentando a dias criar uma procedure no mysql 5, mas não estou tendo sucesso, já uso procedures no sql server, mas no mysql não estou conseguindo de jeito nenhum criar uma procedure....O que eu preciso é simples, quero cadastrar um item atravéz de uma procedure e a mesma vai me retornar o id que foi cadastrado para o item cadastrado.......peguei esse exemplo aqui no forum e mudei para os campos do do meu banco mas não tive sucesso, eu nem fiz a alteração para retornar valor e já está dando erro."Executing Query. Wait ...MySQL ERROR:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')BEGIN INSERT INTO classificados (chamada, texto, anunciante, telefone' at line 9"

CREATE PROCEDURE sp_insere_classsficado(IN va_chamada varchar(50),IN va_texto text,IN va_anunciante varchar(50),IN va_telefone varchar(50),IN va_email varchar(50),)BEGIN   INSERT   INTO classificados   (chamada, texto, anunciante, telefone,email)   VALUES   (va_chamada, va_texto, va_anunciante, va_telefone,va_email);END;
Esse é codigo da criação da minha tabela.

CREATE TABLE `classificados` ( `idclassificado` integer (11) NOT NULL AUTO_INCREMENT , `chamada` varchar (40) NOT NULL, `texto` text NOT NULL, `anunciante` varchar (50) NOT NULL, `telefone` varchar (50) NOT NULL, `email` varchar (50) NOT NULL, `liberado` char (1) NOT NULL DEFAULT 'N', `expira` date NOT NULL, `img` varchar (50), PRIMARY KEY (`idclassificado`)) TYPE=MyISAM CHARACTER SET latin1 COLLATE latin1_swedish_ci

Alguém pode me postar como ficaria a minha procedure para retornar o ID cadastrado....?preciso criar outras procedures....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Note que você deixou uma vírgula antes de fechar o parênteses.

 

E para poder retornar o ID inserido, adicione a seguinte linha antes do END:

 

SELECT @@identity;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal olha o que eu to fazendo de errado ein...

CREATE PROCEDURE sp_insere_classsficado(IN va_chamada varchar(40),IN va_texto text,IN va_anunciante varchar(50),IN va_telefone varchar(50),IN va_email varchar(50),IN va_expira DATE)BEGIN INSERT INTO classificados (chamada, texto, anunciante, telefone, email, liberado, expira) VALUES (va_chamada, va_texto, va_anunciante, va_telefone,va_email,'N',va_expira);END;SELECT @@IDENTITY;

não ta dando certo o programa que eu uso é o dbmananger e ele ta dizendo que tem erro na linha do insert, mas como pode ter erro ai....

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.