Preciso de ajuda. Estou com um problema: Preciso popular algumas tabelas com os dados presente em outra trabela. Decidi fazer uma stored procedure utilizando cursor. Está funcionando, porém ele duplica a última linha, ou seja, sempre insere a última linha da primeira tabela duplicado na tebela que quero popular. Já coloquei o WHILE do=0 DO ... END WHILE; porém acontece o mesmo erro.
Alguém sabe como resolver este problema?
Obrigado
DELIMITER $$
DROP PROCEDURE IF EXISTS `teste_cursor` $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `teste_cursor`()
BEGIN
DECLARE data_cadastramento date;
DECLARE telefone varchar(100);
DECLARE pront varchar(20);
DECLARE num varchar(100);
DECLARE done INT UNSIGNED DEFAULT 0;
DECLARE c_cursor CURSOR FOR SELECT DATA_INCLUSAO,TELEFONE,PRONTUARIO,NUMERO FROM todos;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1;
OPEN c_cursor;
REPEAT
FETCH c_cursor into data_cadastramento,telefone,pront,num;
INSERT INTO cursor_t (Data_d,Telefone,prontuario,num) VALUES (data_cadastramento,telefone,pront,num);
UNTIL done END REPEAT;
CLOSE c_cursor;
END $$
DELIMITER;
Pergunta
RDC
Pessoal,
Preciso de ajuda. Estou com um problema: Preciso popular algumas tabelas com os dados presente em outra trabela. Decidi fazer uma stored procedure utilizando cursor. Está funcionando, porém ele duplica a última linha, ou seja, sempre insere a última linha da primeira tabela duplicado na tebela que quero popular. Já coloquei o WHILE do=0 DO ... END WHILE; porém acontece o mesmo erro.
Alguém sabe como resolver este problema?
Obrigado
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados