Error de sintaxis en la instrucción INSERT INTO

Iniciado por GhostLT, 8 Marzo 2011, 16:54 PM

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

GhostLT

Hola amigos, disculpen pero que error de sintaxis puede tener mal, estoy intentando almacenar la información que existe en los textbox y me tira el siguiente error:
Error de sintaxis en la instrucción INSERT INTO

Los campos de la tabla ya los cheque y los copie y pegue para no equivocarme

Código (vbnet) [Seleccionar]

        Dim sql As String
        sql = "INSERT INTO Usuarios (Name,LastName,NameSesion,Password,Fecha,active) values ('" & TextBox1.Text & "', '" & TextBox4.Text & "','" & TextBox3.Text & "','" & TextBox2.Text & "','" & Date.Today & "','1')"
        Dim cnn As OleDbConnection
        cnn = New OleDbConnection(Cadena)
        '  ' crear comando
        Dim Comando As New OleDbCommand(sql, cnn)
        '  ' crear DataReader
        Dim DataReader As OleDbDataReader
        cnn.Open()
        DataReader = Comando.ExecuteReader() ' obtener DataReader

There is some fiction in you truth, and some truth in you fiction

seba123neo

Hola, facil, pone un punto de interrupcion en el codigo y una vez que la variable "sql" se llena con el string de la consulta, lo copias y lo pegas para ejecutarlo en la base de datos original, (ni idea que estas usando si access o que) ahi te vas a dar cuenta que esta mal, algo en en campo de fecha debe haber, pega aca la consulta como te queda.

saludos.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

GhostLT

Gracias, estoy utilizando access,este es el string que se carga en sql:
Código (sql) [Seleccionar]
INSERT INTO Usuarios (Name,LastName,NameSesion,Password,Fecha,active) values ('nombreprueba', 'apellidoprueba','sesionprueba','123','08/03/2011','1')
A donde me voy para ejecutarlo en la misma base de datos :huh:
There is some fiction in you truth, and some truth in you fiction

Shell Root

Pero entonces tenéis que mostrar la estructura de la tabla, para ver los tipos de datos que estáis usando.

Intenta con estás opciones,
Código (sql) [Seleccionar]
INSERT INTO Usuarios (Name, LastName, NameSesion, Password, Fecha, active) VALUES ('nombreprueba', 'apellidoprueba','sesionprueba','123','08-03-2011', TRUE);

Lo mejor es generar la query desde el mismo motor de base de datos.
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

seba123neo

Cita de: GhostLT en  8 Marzo 2011, 20:18 PM
A donde me voy para ejecutarlo en la misma base de datos

abris la base de datos de access y ahi mismo tenes para ejecutar las consultas SQL...abrir las tablas..etc..si como dijo Shell Root, pone los tipos de datos de los campos, debe ser algo de eso.

saludos.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

GhostLT

ok, ejecute la consulta y me arrojo lo siguiente

Después, me fui a la tabla y vi que lo anexo




Lo que me llevo a la conclusion de ir probando (agregando) campo por campo y en el campo de Password tengo el problema con los asteriscos, los cuales si se los quito funciona todo bien, pero se vería el password en la base de datos...

There is some fiction in you truth, and some truth in you fiction

Nakp

LOL entonces... guardas asteriscos? x'D en vez de guardar 1 para el campo 'active' cambialo por a defalut true :P asi no insertas es campo cada vez que agregas un usuario (en la base de datos) y ademas... seria mejor que la password la guardaras cifrada con algun hash en vez de texto plano (o asteriscos... me lo parece? x'D)
Ojo por ojo, y el mundo acabará ciego.