jose_carlos_4 Postado Setembro 11, 2008 Denunciar Share Postado Setembro 11, 2008 Boa Tarde pessoal estou com um problema, minha procedure não está retornando todas as linhas afetadas e tenho mais uma dúvida, se a forma de utilizar o like nessa procedure está correta.@cpfCnpj varchar(14) OUTPUT,@nomeFantasia varchar(25) OUTPUT,....ASBEGINSELECT @nomeFantasia = T.AGTFAN, @cpfCnpj = T.AGTCGCCPF ........FROM SysacME.dbo.AGENTE_TEMP T WHERE T.AGTFAN like @nomeFantasiaSELECT @codigo ,@nomeFantasia -------Esse último select é para retornar os valores obtidosObrigado. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jothaz Postado Setembro 11, 2008 Denunciar Share Postado Setembro 11, 2008 Não entedi nadinha da sua duvida. Mas sou lerdo mesmo! :P É seguinte com o código:SELECT @nomeFantasia = T.AGTFAN, @cpfCnpj = T.AGTCGCCPF ........ FROM SysacME.dbo.AGENTE_TEMP T WHERE T.AGTFAN like @nomeFantasia SELECT @codigo ,@nomeFantasia você esta executando um select na sua base e retornando em variaveis locais no escopo do seu server SQL então você só devolverá talvez o último registro e não uma lista com os regsitros e isso se o like estiver ok e acho que tá errado. Para devolver tipo um lista para ser usada como recordeset por exemplo: SELECT T.AGTFAN, T.AGTCGCCPF ........ FROM SysacME.dbo.AGENTE_TEMP T WHERE T.AGTFAN like @nomeFantasia Agora sobre o like acho que o exemplo a seguir pode dar uma luz: declare @tab table (id int IDENTITY , nome varchar(20)) insert into @tab (nome) values ('Diana') insert into @tab (nome) values ('Tarciana') insert into @tab (nome) values ('Sonia') insert into @tab (nome) values ('Dora') insert into @tab (nome) values ('Diadora') select * from @tab where nome like 'diana' select * from @tab where nome like 'dia%' select * from @tab where nome like 'Diad%' Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jose_carlos_4 Postado Setembro 12, 2008 Autor Denunciar Share Postado Setembro 12, 2008 Bom Dia Jothaz, a minha aplicação está fazendo a chamada dessa procedure e enviando um parâmetro para consulta q vai ser adiconado na variável nomeFantasia onde está sendo usado no (like), então eu gostaria de quando a consulta fosse realizada, adicionasse todos os valores que foram consultado, ou seja os atributos de clientes, na devidas variáveis. Agora eu não sei se forma como está implementada está correta. Resumindo é isso. Fico no aguardo para mais alguma sugestão.Valeu.Um outro problema q ocorre é quando retorna os valores, por exemplo, um consulta feita direta no banco como teste, tras 2 linhas de resultado, mas quando a procedure é executada só tras apenas 1 linha de resultado, não sei se precisa fazer um while para pegar essas linhas. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jothaz Postado Setembro 12, 2008 Denunciar Share Postado Setembro 12, 2008 Posta o fonte da procedure ai por favor! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
jose_carlos_4
Boa Tarde pessoal estou com um problema, minha procedure não está retornando todas as linhas afetadas e tenho mais uma dúvida, se a forma de utilizar o like nessa procedure está correta.
@cpfCnpj varchar(14) OUTPUT,
@nomeFantasia varchar(25) OUTPUT,
.
.
.
.
AS
BEGIN
SELECT @nomeFantasia = T.AGTFAN, @cpfCnpj = T.AGTCGCCPF ........
FROM SysacME.dbo.AGENTE_TEMP T WHERE T.AGTFAN like @nomeFantasia
SELECT @codigo ,@nomeFantasia
-------
Esse último select é para retornar os valores obtidos
Obrigado.
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.