Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Rudy21 en 21 Agosto 2011, 00:25 am



Título: vb net SELECT de Acces no funciona
Publicado por: Rudy21 en 21 Agosto 2011, 00:25 am
Buenas

Tengo un pequeño problema que no logro resolver

si ejecuto este SQL en ACCESS funciona perfectamente y me devuelve el ID, pero si la ejecuto en VB NET me dice que no hay registros

Código:
select id from medicamentos where codigo='2121 1';

ya lo intente tambien como

Código:
select id from medicamentos where codigo like '2121 1';

si ejecuto la consulta en ACCESS funciona tendrá algo que ver que el campo sea de tipo TEXTO?

aqui está el como lo hago en vb net el codigotxt.text contiene "2121"
Código:
Dim cn As OleDbConnection
Dim cmd As OleDbCommand
Dim dr As OleDbDataReader

Try
cn = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & CurDir() & "\base.accdb;")
cn.Open()
cmd = New OleDbCommand("select id from articulos where codigo like '" & CodigoTxt.Text & " 1'", cn)
dr = cmd.ExecuteReader
MsgBox(dr("id"))
dr.close()
cn.close()
Catch ex As Exception
MsgBox(ex.Message)
End Try

en el vb net me dice el exception "No Data Exist for the Row/column."

Alguna idea?

de antemano GRACIAS


Título: Re: vb net SELECT de Acces no funciona
Publicado por: neoncyber en 22 Agosto 2011, 00:36 am
bueno, tienes que llamar al metodo Read para leer el datareader

Saludos


Título: Re: vb net SELECT de Acces no funciona
Publicado por: Rudy21 en 22 Agosto 2011, 02:48 am
Si lo llamo,

aqui

Código:
dr = cmd.ExecuteReader

lo unica forma que hago que esto funcione es

haciendo el select * from articulos

y ya hago un if

Código:
if dr("codigo") = codigotxt.text & " 1" then

pero hace ToDAS LAS COMPARACIONES


Título: Re: vb net SELECT de Acces no funciona
Publicado por: neoncyber en 23 Agosto 2011, 06:05 am
yo me refiero al metodo Read, de tu dr, el cual avanza una posicion el puntero dentro de un recordset

Saludos


Título: Re: vb net SELECT de Acces no funciona
Publicado por: Rudy21 en 23 Agosto 2011, 07:17 am
aa ya entiendo dices que antes de eso haga un

dr.read GRACIAS!!

ahora mismo lo pruebo