Error comando insert into

124 views
Skip to first unread message

pablo b(La Pampa)

unread,
Sep 27, 2011, 4:33:36 PM9/27/11
to Comunidad de Visual Foxpro en Español
Hola Amigos del for, a ver les cuento tengo el siguiente inconveniente
con esto:

lcINSERT6 = "INSERT INTO usuarios
(nombre,bloqueado,fechaacceso,sucursal,codterminal,vendedores,planes,tarjetas,usuarios,numsucursal,almacen,comproba,historial,habilitaciones,remitoequipos,remitodevolucion,entradaequipos,entradasim,stockequipos,stocksim,stocksucu);
VALUES (?v50,?v3,?v2,?v1,?v4,?v5,?v6,?v7,?v8,?v10,?vAlma,?
vCorre,?v11,?v12,?v13,?v14,?v15,?v16,?v17,?v18,?v19)"

cuando voy a cerrar el form para seguir en el proyecto con otra cosa
me tira el error de "El comando contiene una frase o palabra clave no
reconocida"

ya probe de todo, puse todo en la misma linea y nada, lo puse como lo
ven ahora y tampoco, solo funciona si le saco "campos" o sea lo dejo
hasta donde dice "comproba" que esos eran los campos iniciales que
tenia en la tabla de mysql y despues les agregue todo el resto, pero
lo extraño es que el error me lo da en tiempo de diseño o sea cuando
estoy programando el codigo ¿no entiendo cual o donde esta el error?
todas esas palabras estan bien escritas ya las revise, es como que hay
entre eso una palabra clave pero ni ideaaa cual???.

Alguna ayuda o idea???

Muchas Gracias

Pablo

extremo

unread,
Sep 27, 2011, 5:04:13 PM9/27/11
to Comunidad de Visual Foxpro en Español
alomejor la cadena es muy larga

prueba de la siguiente forma:

lcINSERT6 = "INSERT INTO usuarios "
lcINSERT6 = lcINSERT6 +
"(nombre,bloqueado,fechaacceso,sucursal,codterminal,vendedores,planes,tarjet­
as,"
lcINSERT6 = lcINSERT6 +
"usuarios,numsucursal,almacen,comproba,historial,habilitaciones,remitoequ­"
lcINSERT6 = lcINSERT6 +
"ipos,remitodevolucion,entradaequipos,entradasim,stockequipos,stocksim,stock­
sucu)"
lcINSERT6 = lcINSERT6 + "VALUES (?v50,?v3,?v2,?v1,?v4,?v5,?v6,?v7,?
v8,?v10,?vAlma,?vCorre,?v11,?v12,?v13,"
lcINSERT6 = lcINSERT6 + "?v14,?v15,?v16,?v17,?v18,?v19)"

Bendiciones


On 27 sep, 16:33, "pablo b(La Pampa)" <panchot...@gmail.com> wrote:
> Hola Amigos del for, a ver les cuento tengo el siguiente inconveniente
> con esto:
>
> lcINSERT6 = "INSERT INTO usuarios
> (nombre,bloqueado,fechaacceso,sucursal,codterminal,vendedores,planes,tarjet­as,usuarios,numsucursal,almacen,comproba,historial,habilitaciones,remitoequ­ipos,remitodevolucion,entradaequipos,entradasim,stockequipos,stocksim,stock­sucu);

Walter R. Ojeda Valiente

unread,
Sep 27, 2011, 5:17:57 PM9/27/11
to publice...@googlegroups.com
A simple vista yo encuentro tres problemas:

1. Hay un punto y coma que no debería estar ahí (al menos no en Firebird, no recuerdo si Mysql lo requiere)
2. vCorre está en otra línea, sin el punto y coma de continuación
3. Tu cadena es muy larga, el Visual FoxPro solamente acepta cadenas de hasta 255 caracteres de largo. Para subsanar esto puedes usar el comando TEXT ... ENDTEXT

TEXT lcINSERT6 NOSSHOW

INSERT INTO usuarios
(nombre,bloqueado,fechaacceso,sucursal,codterminal,vendedores,planes,tarjetas,usuarios,numsucursal,almacen,comproba,historial,habilitaciones,remitoequipos,remitodevolucion,entradaequipos,entradasim,stockequipos,stocksim,stocksucu);
VALUES (?v50,?v3,?v2,?v1,?v4,?v5,?v6,?v7,?v8,?v10,?vAlma,?vCorre,?v11,?v12,?v13,?v14,?v15,?v16,?v17,?v18,?v19)
ENDTEXT

Saludos.

Walter.



> Date: Tue, 27 Sep 2011 13:33:36 -0700
> Subject: [vfp] Error comando insert into
> From: panch...@gmail.com
> To: publice...@googlegroups.com

Daniel Sánchez

unread,
Sep 28, 2011, 11:57:34 PM9/28/11
to publice...@googlegroups.com
Concatenar cadenas también te rompe el límite de los 255 caracteres algo como esto

cInsert6=[INSERT INTO usuarios]+;
[(nombre,bloqueado,fechaacceso,sucursal,codterminal,vendedores,planes,tarjetas,usuarios,numsucursal,almacen,comproba,historial,]+;
[habilitaciones,remitoequipos,remitodevolucion,entradaequipos,entradasim,stockequipos,stocksim,stocksucu)]+;
[VALUES (?v50,?v3,?v2,?v1,?v4,?v5,?v6,?v7,?v8,?v10,?vAlma,?vCorre,?v11,?v12,?v13,?v14,?v15,?v16,?v17,?v18,?v19)]

Y como comenta Walter O. el ; esta de mas.

Saludos

-- 
Daniel Sánchez Escobar
Investigación y Desarrollo
Reset Software & Sistemas
Móvil +051-949398047
Trujillo - Perú

ricardo peña

unread,
Sep 29, 2011, 6:24:17 AM9/29/11
to GRUPO-VFP GRUPO-VFP
Estimados colegas:
 
Una de las ventajas que tiene el comando insert es que puedo omitir el
nombre de los campos, siempre y cuando coloque en orden los valores
a insertar en la tabla.  De esta manera la cláusula insert puede quedar
reducida a:
 
cInsert6="INSERT INTO usuarios VALUES (?v50,?v3,?v2,?v1,?v4,?v5,?v6,?v7,?v8,?v10,?vAlma,?vCorre,?v11,?v12,?v13,?v14,?v15,?v16,?v17,?v18,?v19)"
 
Si dentro de la tabla hay un campo autoincremental, sólo debo saltearlo
y nada más.
 
Ricardo Luis Peña
Analista de Sistemas
BA - Argentina
011-15-4440-7378
 

Date: Wed, 28 Sep 2011 22:57:34 -0500
Subject: Re: [vfp] Error comando insert into
From: resets...@gmail.com
To: publice...@googlegroups.com
Reply all
Reply to author
Forward
0 new messages