¿Consulta a un Base de Datos de accces?

Iniciado por TheGhost(Z), 15 Noviembre 2005, 11:44 AM

0 Miembros y 1 Visitante están viendo este tema.

TheGhost(Z)

Hola a todos nuevamente.

Verais mi objetivo es abrir una tabla y ubicarme en una registro determinado.

Es decir ubicarme en la fila que dicho dato sea igual a mi variable. Mi problema es como funciona consultar aparir de una varibale. Porque no me sale con variable. Pero ingresando el dato directamente no tengo ningun problema.

Ejemplos de lo que hice:

#### Esta No funciona, porque es con variable  (ID)####

Dim ID As String * 6
ID= ListView1.SelectedItem.ListSubItems(1)       ' ListView1.SelectedItem.ListSubItems(1)= PEJE05


Cn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path + "\bdraicesDATA.mdb")
Rs.Open "select *  from Remitentes WHERE CodRem =
ID order by CodRem", Cn, adOpenDynamic, adLockOptimistic

##### Pero esta si funciona porque no uso ninguna variable, sino ingreso el dato directamente #####

Cn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + App.Path + "\bdraicesDATA.mdb")
Rs.Open "select *  from Remitentes WHERE CodRem = '
PEJE05' order by CodRem", Cn, adOpenDynamic, adLockOptimistic


Bourne Ultimatum

Private Sub Buscar(Optional ByVal Siguiente As Boolean = False)
    Dim nReg As Long
    Dim vBookmark As Variant
    Dim sADOBuscar As String
    nReg = Val(Text2)
    On Error Resume Next
        If Option7.Value Then
        sADOBuscar = "AMBVA Like '" & Text2.Text & t6.Text & "'"
    End If
    If Option1.Value Then
            sADOBuscar = "ja Like '" & Text2.Text & "'"
    End If
            vBookmark = Adodc1.Recordset.Bookmark
    If Siguiente = False Then
        Adodc1.Recordset.MoveFirst
        Adodc1.Recordset.Find sADOBuscar
    Else
        Adodc1.Recordset.Find sADOBuscar, 1
    End If
    If Err.Number Or Adodc1.Recordset.BOF Or Adodc1.Recordset.EOF Then
        Err.Clear
        Adodc1.Recordset.Bookmark = vBookmark
    End If
    End Sub
"El pertenecia a esa clase singular de hombres que la especie produce rara vez,
en quienes el ansia de poder ilimitado es tan extremo que para conseguirlo
cualquier sufrimiento parece natural" Ernesto CHE Guevara

http://www.desdeabajorugby.com.ar

Xpeed

a ver... de base de datos aún no sé... pero creo que el problema de quer no te sale con la variable es porque la estás pasando en texto plano...

Rs.Open "select *  from Remitentes WHERE CodRem = ID order by CodRem", Cn, adOpenDynamic, adLockOptimistic

intenta pasarla como lo que es como una variable sin estár dentro de comillas de la siguiente manera



Dim ID As String * 6
ID= ListView1.SelectedItem.ListSubItems(1)       ' ListView1.SelectedItem.ListSubItems(1)= PEJE05


Cn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\bdraicesDATA.mdb")
Rs.Open "select *  from Remitentes WHERE CodRem = " & ID & "order by CodRem", Cn, adOpenDynamic, adLockOptimistic




otra cosa para concatenar cadenas de caracteres no uses "+" usa el apersand "&"


un saludo.

TheGhost(Z)

Gracias Xpeed. Pues ahi estaba mi error. Que par hacer una consulta con la clausula Where y que los datos los tome de una variable, como por ejemplo:

Dim Xnombre As String
Xnombre="TheGhost(Z)"

Seria:

Where  Nombre=' " & Xnombre & " ' Order by Nombre

esa es la correcta, cierto.

Xpeed


TheGhost(Z)