SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: lunaDeEden en Martes 2 de Febrero de 2010, 04:31

Título: Consulta con Like
Publicado por: lunaDeEden en Martes 2 de Febrero de 2010, 04:31
Hola, me pueden ayudar con este codigo, no consigo realizar la búsqueda de todos los apellidos iguales, me sale error de sintaxis, por favor...gracias desde ya..

Código: C#
  1. private void cmdbuscarnom_Click(object sender, EventArgs e)
  2.         {
  3.             if (t_ape.Text != "")
  4.             {
  5.                 //Busqueda
  6.                 MySqlConnection CANAL;
  7.                 MySqlDataAdapter ORDEN;
  8.                 CANAL = new MySqlConnection("user id=root;database=tucuman;server=localhost");
  9.                 string q = "select from t_empleados WHERE apellido LIKE '%  @ape '%";
  10.  
  11.                 ORDEN = new MySqlDataAdapter(q, CANAL);
  12.                 ORDEN.SelectCommand.Parameters.Add(new MySqlParameter("@ape", MySqlDbType.VarChar));
  13.                 ORDEN.SelectCommand.Parameters["@ape"].Value = t_ape.Text;
  14.                 DataTable TABLA = new DataTable();
  15.                 ORDEN.Fill(TABLA);
  16.  
  17.                 if (TABLA.Rows.Count > 0)
  18.                 {
  19.                     MessageBox.Show("Se encontrarón datos", "Cuero Tucumán");
  20.                     grillaeliminar.DataSource = TABLA;
  21.                     t_ape.Clear();
  22.                 }
  23.                 else
  24.                 {
  25.                     MessageBox.Show("No hay datos que mostrar", "Cuero Tucumán");
  26.                     t_ape.Clear();
  27.                     t_ape.Focus();
  28.                 }
  29.                 CANAL.Close();
  30.             }
  31.             else
  32.             {
  33.                 MessageBox.Show("Debe ingresar algún apellido", "Error");
  34.                 t_ape.Clear();
  35.                 t_ape.Focus();
  36.             }
  37.  
Título: Re: Consulta con Like
Publicado por: ProfesorX en Martes 2 de Febrero de 2010, 20:01
Tus apostrofes en la consulta estan mal:
Código: C#
  1.  
  2. string q = "select from t_empleados WHERE apellido LIKE '%  @ape '%";
  3.  
  4.  

deberia ser:

Código: C#
  1.  
  2. string q = "select from t_empleados WHERE apellido LIKE '%  @ape %'";
  3.  
  4.  

aunque aun asi no creo que la consulta te funcione, ya que no estas concatenando las cadenas.

Si no te funciona, concatena las cadenas de la siguiente manera:

Código: C#
  1.  
  2. string q = "select from t_empleados WHERE apellido LIKE concat('%',@ape,'%')"
  3.  
  4.  
Título: Re: Consulta con Like
Publicado por: lunaDeEden en Miércoles 3 de Febrero de 2010, 02:55
Hola, estuve probando y nada me da error de sintaxis....ya probe un monton de formas...y no me sale, no se como hacer....
Título: Re: Consulta con Like
Publicado por: lunaDeEden en Miércoles 3 de Febrero de 2010, 03:04
Hola, ya pude hacerlo use la segunda forma que me dijiste, pasa que no me habia dado cuenta que no puse el  * delante del FROM..., pero ya esta ...muchas gracias por tu ayuda...