ASP.NET - Problemas con LIKE en ASP.NEt y SQLSERVER

 
Vista:

Problemas con LIKE en ASP.NEt y SQLSERVER

Publicado por Tony (12 intervenciones) el 10/03/2011 17:25:09
Estoy haciendo un buscador para una tabla de mi BD
Todos los procedimientos de búsqueda me funcionan excepto el de búsqueda en un campo (hecho) varchar. No me devuelve nada.

Lo que tengo es lo siguiente:
Aquí le paso el parametro de busqueda, según en el campo que se quiera buscar. En este caso lo toma del control (TextBox1)
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
parametro = "@Hecho"
procedimiento = "EFEMERIDES_GETALLByHecho"
tiposql = SqlDbType.VarChar
valorparametro = TextBox1.Text
MyConnection = New SqlConnection("server=Apolo;database=IntranetIIFT;Trusted_Connection=yes")
MyDataAdapter = New SqlDataAdapter(procedimiento, MyConnection)
MyDataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure
MyDataAdapter.SelectCommand.Parameters.Add(New SqlParameter(parametro, tiposql))
MyDataAdapter.SelectCommand.Parameters(parametro).Value = valorparametro
MyDataAdapter.SelectCommand.Parameters.Add(New SqlParameter("@RowCount", SqlDbType.Int, 4))
MyDataAdapter.SelectCommand.Parameters("@RowCount").Direction = ParameterDirection.Output
DS = New DataSet()
MyDataAdapter.Fill(DS, procedimiento)
Labelcount.Text = MyDataAdapter.SelectCommand.Parameters(1).Value & " Registros coincidentes"
GridView3.DataSource = DS.Tables(procedimiento).DefaultView
GridView3.DataBind()
MyDataAdapter.Dispose()
MyConnection.Close()
End Sub
*********************************************************
PROCEDIMIENTO ALMACENADO (EFEMERIDES_GETALLByHecho) EN SQLSERVER

SELECT Dia, Mes, Año, Aniv, Cat, Hecho FROM Efemerides
WHERE hecho LIKE '%'+@Hecho+'%'
ORDER BY Aniv DESC, Año ASC, Mes ASC, Dia ASC, Cat ASC, Hecho ASC
SELECT @RowCount=@@ROWCOUNT
**********************************************************************
He probado lo siguiente:
Cuando pruebo un Gridview con un SQLDataSource con el correspondiente “Store Procedure - (EFEMERIDES_GETALLByHecho)” y hago un Testquery todo me funciona bien.
Si pruebo con un Gridview con un SQLDataSource con “SQL Statement - SELECT [Dia], [Mes], [Año], [Hecho] FROM [Efemerides] WHERE ([Hecho] LIKE '%' + @Hecho + '%') ” y hago un Testquery todo me funciona bien
No sé porque no me funciona como lo he concebido.
Repito que otras búsquedas si me funcionan con el mismo mecanismo que aplico
Yo se lo adjudico al LIKE '%'. He leído y existen muchos criterios sobre esto
Alguien sabe porque no me funciona
Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Problemas con LIKE en ASP.NEt y SQLSERVER

Publicado por tony (12 intervenciones) el 14/03/2011 22:49:44
Solucionado:
Ante todo muchísimas gracias.
Con respecto a lo que plantee ya se soluciono, era un “mareo”, borre los temporales en (C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files). Todo el procedimiento que escribí estaba bien, por suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar