Jump to content

Dúvida na construção de uma query


kombypetras
 Share

Recommended Posts

Boas pessoal.

A minha dúvida é a seguinte.

Estou a construir uma aplicação para gerir sócios e para isso construí uma base de dados.

Nessa base dados tenho a tabela Sócio que tem um atributo nome.

Na minha aplicação tenho uma pesquisa que vai usar uma palavra chave introduzida pelo utilizador.

O que eu queria era uma query que devolve-se todos os sócios que no nome tenha a palavra chave introduzida pelo utilizador.

Exemplo:

nº      Nome     

1    Zeca Rambo

2    Zeca Nada

3    John Rambo

Se o utilizador introduzir a palavra chave "rambo"

devolve os utilizadores 1 e 3

Espero a vossa ajuda

Link to comment
Share on other sites

Boas Bruno.

Obrigado pela ajuda, mas continuo a não conseguir o que quero apesar da tua resposta estar correcta.

O problema é que não consegui por isso a funcionar na minha aplicação.

Na minha aplicação tenho o seguinte código...

         cmd1 = new SqlCommand("SELECT * FROM Socio WHERE nome LIKE '%@var%'", sqlConn);
         da = new SqlDataAdapter();
         String input1 = var;
         par1 = new SqlParameter("@var", SqlDbType.NVarChar);
         par1.Value = input1;
         cmd1.Parameters.Add(par1);
         da.SelectCommand = cmd1;

se colocar desta forma funciona

         cmd1 = new SqlCommand("SELECT * FROM Socio WHERE nome LIKE '%Bruno%'", sqlConn);
         da = new SqlDataAdapter();
         String input1 = var;
         par1 = new SqlParameter("@var", SqlDbType.NVarChar);
         par1.Value = input1;
         cmd1.Parameters.Add(par1);
         da.SelectCommand = cmd1;

Será que me consegues ajudar a decifrar qual o problema, não dá erro mas não mostra nenhum dado quando era suposto mostrar.

O problema deve estár na forma como estou e fornecer os dados na query.

Link to comment
Share on other sites

Eu já tive esse problema, estás a usar C# não é?

Se for o mesmo problema que tive, o problema está no '%@var%' já não me lembro exactamente o porquê do problema mas fartei-me de procurar e não encontrei solução.

Contornei o problema criando a query SQL através da concatenação de String e depois executar como uma String única sem variáveis. Não é tão elegante mas não altura foi como solucionei o problema :|

I haven’t lost my mind; it’s backed up on DVD somewhere!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.