Rickardo Postado Setembro 2, 2010 Denunciar Share Postado Setembro 2, 2010 seguinte galera to com um problema to tentando criar uma procedure mais não consigo pasar o parametro q é um texto..por exemplocreate procedure buscaNome(in texto varchar(250)) Begin select nome, outro_campo, outrocampo from minhatabela where nome = texto endacontece q quando chamo a proceddure "call buscaNome('fulano') não retorna nada.. se coloco call buscaNome(fulano) da erro.eu acho q o erro ta no select pois se é um texto deveri ser assimselect nome, outro_campo, outrocampo from minhatabela where nome =' texto ' (entre aspas..)mais se coloco-as ai ele busca a palavra texto e não a palavra fulano...alguém ai pode me ajuda????plissssssssssssvaleu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Courcy Postado Setembro 2, 2010 Denunciar Share Postado Setembro 2, 2010 Oi, 'Rickardo'Eu fiz este teste em meu banco de teste e funcionou.DELIMITER $$; DROP PROCEDURE IF EXISTS `test`.`buscaNome`$$ CREATE PROCEDURE `test`.`buscaNome` (in texto varchar(250)) BEGIN select nome from sase.cliente where nome = texto; END$$ DELIMITER;$$É importante que o argumento passado para texto seja um nome completo existente em sua tabela. (No meu caso usei uma tabela de clientes de outro banco de minha coleção de testes. Se você passar somente parte do nome não vai funcionar por causa do tipo de comparação feito na cláusula where. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rickardo Postado Setembro 2, 2010 Autor Denunciar Share Postado Setembro 2, 2010 Oi, 'Rickardo'Eu fiz este teste em meu banco de teste e funcionou.DELIMITER $$; DROP PROCEDURE IF EXISTS `test`.`buscaNome`$$ CREATE PROCEDURE `test`.`buscaNome` (in texto varchar(250)) BEGIN select nome from sase.cliente where nome = texto; END$$ DELIMITER;$$É importante que o argumento passado para texto seja um nome completo existente em sua tabela. (No meu caso usei uma tabela de clientes de outro banco de minha coleção de testes. Se você passar somente parte do nome não vai funcionar por causa do tipo de comparação feito na cláusula where.valeu amigo vou testar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rickardo Postado Setembro 3, 2010 Autor Denunciar Share Postado Setembro 3, 2010 ola amigoolha só minha procedureCREATE PROCEDURE `procVerificaAcesso`(IN grupo INTEGER(11), IN modulo VARCHAR(250)) BEGIN SELECT tgrupoacesso.id_grupo, tmodulo.string_modulo FROM tmodulo INNER JOIN tgrupoacesso ON (tmodulo.id_modulo = tgrupoacesso.id_modulo) WHERE id_grupo = grupo AND string_modulo = modulo; ENDpois bem... compilei a procedure beleza...quando tento executar aparece a mensagem...Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (latin1_general_ci,IMPLICIT) for operation '='como resolvo isso???? Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Rickardo
seguinte galera to com um problema to tentando criar uma procedure mais não consigo pasar o parametro q é um texto..
por exemplo
acontece q quando chamo a proceddure "call buscaNome('fulano') não retorna nada.. se coloco call buscaNome(fulano) da erro.
eu acho q o erro ta no select pois se é um texto deveri ser assim
select nome, outro_campo, outrocampo from minhatabela where nome =' texto ' (entre aspas..)
mais se coloco-as ai ele busca a palavra texto e não a palavra fulano...
alguém ai pode me ajuda????
plissssssssssss
valeu
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.