problema con comando

23/09/2004 - 22:26 por Santiago Altieri | Informe spam
tengo un problema... quiero pasar un string a un comando de busqueda... o
sea lo q tenga adentro la

propiedad text de mi control textbox quiero q funciones como criterio de una
busqueda

yo lo q hice fue crearle como parametro esta bien???

pero no me funciona...

o sea si yo le pongo un nombre manualmente funciona el comando anda...
pero si intento usar ese parametro q cree

no anda

pliss agradeceria mucho su ayuda



Dim conexion As New OleDb.OleDbConnection(dbgenerac.ConnectionString)

conexion.Open()

Dim bus As String = busq.Text

Dim a As String = "SELECT * FROM clientes WHERE Contacto LIKE '%Busqe%'"

Dim comando As New OleDb.OleDbCommand(a, conexion)

Dim Busqe As New OleDb.OleDbParameter("Busqe", OleDb.OleDbType.Char)

Busqe.Value = bus

comando.Parameters.Add(Busqe)

Dim dr As OleDb.OleDbDataReader = comando.ExecuteReader()

Do While dr.Read()

MsgBox(dr.Item("Contacto"))

Loop

conexion.Close()

Preguntas similare

Leer las respuestas

#1 Jose Marcenaro
23/09/2004 - 22:36 | Informe spam
Debes incluir un signo de interrogacion para indicar el parámetro; o sea
Dim a As String = "SELECT * FROM clientes WHERE Contacto LIKE
'%'+?Busqe+'%'"

o bien
Dim a As String = "SELECT * FROM clientes WHERE Contacto LIKE ?Busqe"
y luego asignar '%'+bus+'%' en el parametro

Saludos
Jose Marcenaro


"Santiago Altieri" escribió en el mensaje
news:%
Mostrar la cita
una
Mostrar la cita
-
Mostrar la cita
-
Mostrar la cita
#2 Santiago Altieri
24/09/2004 - 01:28 | Informe spam
puse esto y anda bien el parametro busqueda... pero como puedo insertar un
2do parametro para establecer

la columna con la q quiero trabajar probe con ?columna pero no anda...
tambien probe columna=? y tampoco

-

dim a As String = "SELECT * FROM clientes WHERE Contacto LIKE ?"

Dim comando As New OleDb.OleDbCommand(a, conexion)

'comando.Parameters.Add("columna", "Contacto")

comando.Parameters.Add("busqueda", bus & "%")

Dim da As New OleDb.OleDbDataAdapter(comando)

Dim ds As New DataSet

da.Fill(ds, "clientes")

grid1.DataSource = ds

grid1.DataMember = "clientes"

conexion.Close()

-
#3 Jose Marcenaro
24/09/2004 - 22:22 | Informe spam
Eso no lo puedes pasar como parámetro (el nombre de una columna no se puede
especificar en forma variable en un select)

Lo que puedes hacer es armar la expresion select según la columna que
quieres filtrar, algo asi como ...
dim a As String = "SELECT * FROM clientes WHERE " + columna + " LIKE ?"


Saludos
Jose Marcenaro

"Santiago Altieri" escribió en el mensaje
news:%23No$
Mostrar la cita
#4 Santiago Altieri
24/09/2004 - 23:42 | Informe spam
okko gracias
funciona...

"Jose Marcenaro" wrote in message
news:
Mostrar la cita
Ads by Google
Search Busqueda sugerida