Autor Tema: Visual Basic Invalid SQL statement; expected 'DELETE', 'INSERT', 'PROCEDURE',  (Leído 2439 veces)

felix69

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 3
    • Ver Perfil
Hola a todos feliz año

Solo trato de guardar registros en una tabla de access  y buscar registros y mostrarlos en un msgbox desde vb.net

Trato de ejecutar una busqueda  y obtengo error de: Invalid SQL statement; expected 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT', or 'UPDATE'.
la conexión con la db esta bien ,al realizar un insert funciona bien ,pero con el select no.

Si alguien puede informarme que estoy haciedo mal se lo agradesere

ES en vb express ,DB en access

Les dejo el codigo

Código: [Seleccionar]
Public Sub Buscar()
        conecting()
        If fperid.Text <> "" Then
           sql = ("SELECT pern,pera,levelname,levelnum,perid FROM personas WHERE perid ="(fperid.Text))
         
            coman.CommandText = sql
        Else
        End If
        Try
            DataR = coman.ExecuteReader()
            'DataR.Read()
            If DataR.HasRows Then
                While DataR.Read
                    MsgBox(DataR(0).ToString + "" + DataR(1).ToString + "" + DataR(2).ToString + "" + DataR(3).ToString + "" + DataR(4).ToString)
                End While
            Else
                MsgBox("No hay Datos")
            End If
        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
    End Sub
« Última modificación: 05 de Enero 2016, 22:50 por Alex Rodríguez »

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Hola, ¿puedes mostrar el insert que te funciona bien?

Por lo que dices el error parece estar en la consulta.

Prueba en lugar de

sql = ("SELECT pern,pera,levelname,levelnum,perid FROM personas WHERE perid ="(fperid.Text))

A escribir algo como esto:
         
sql = ("SELECT pern,pera,levelname,levelnum,perid FROM personas WHERE perid ='" & fperid.Text & "'")

Fíjate que el texto va envuelto en apóstrofes y en usar el operador & de concatenación.

Otra opción que puedes probar es:

sql = ("SELECT pern,pera,levelname,levelnum,perid FROM personas WHERE perid LIKE '" & fperid.Text & "'")

Saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".