Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Psyke1 en 2 Febrero 2015, 05:09 am



Título: [DUDA] Error en ADO al poner un WHERE en la consulta
Publicado por: Psyke1 en 2 Febrero 2015, 05:09 am
Tengo un fichero csv con la siguiente información:

Código:
NOMBRE,EDAD,FECHA
MARIO,30,24/12/2002
MARIA,90,24/12/2001
PEDRO,10,24/12/2004

Y quiero hacer una consulta de la siguiente manera:

Código
  1. Dim oConn As New ADODB.Connection
  2. Dim oRS As New ADODB.Recordset
  3.  
  4. oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" _
  5. & "Data Source=" & Environ("temp") & ";" _
  6. & "Extended Properties=""text;HDR=Yes;FMT=Delimited(;)"";Persist Security Info=False"
  7.  
  8. Set oRS = oConn.Execute("select * from datos.csv")
  9. Dim ofield As ADODB.Field
  10.  
  11. Do Until oRS.EOF
  12.    For Each ofield In oRS.Fields
  13.        Debug.Print "Field Name = " & ofield.Name & " Field Value = " & ofield.Value
  14.    Next ofield
  15.    oRS.MoveNext
  16. Loop

Esto devuelve:
Código:
Field Name = NOMBRE Field Value = MARIO
Field Name = EDAD Field Value = 30
Field Name = FECHA Field Value = 24/12/2002
Field Name = NOMBRE Field Value = MARIA
Field Name = EDAD Field Value = 90
Field Name = FECHA Field Value = 24/12/2001
Field Name = NOMBRE Field Value = PEDRO
Field Name = EDAD Field Value = 10
Field Name = FECHA Field Value = 24/12/2004

Pero si intento hacer una consulta del tipo:
Código
  1. SELECT EDAD FROM datos.csv WHERE NOMBRE='MARIO'

Me devuelve esto:

(http://i57.tinypic.com/mvotc3.png)

¿Qué se me está escapando?
Muchas gracias.

DoEvents! :P


Título: Re: [DUDA] Error en ADO al poner un WHERE en la consulta
Publicado por: MCKSys Argentina en 2 Febrero 2015, 06:45 am
Hola!
Según veo en la web, ese error (selected collating sequence not supported by the operating system) sale cuando estás en el IDE.

Prueba a compilar un exe a ver si se soluciona así.

Saludos!

PD: En VB6, luego de compilar un exe, ejecuto el segundo SQL en el IDE y no da error...  :huh: :huh:


Título: Re: [DUDA] Error en ADO al poner un WHERE en la consulta
Publicado por: Psyke1 en 2 Febrero 2015, 16:42 pm
Hola MCKSys,  :)

Aún compilado me da el mismo error...

(http://i57.tinypic.com/2mee4r5.png)

¿Alguna idea?
Si quito el where funciona perfecto.
Esto es muy raro...  :-\

DoEvents! :P


Título: Re: [DUDA] Error en ADO al poner un WHERE en la consulta
Publicado por: seba123neo en 4 Febrero 2015, 16:23 pm
proba cambiar la libreria de ADO, creo que la ultima es la 2.8.