FoxPro/Visual FoxPro - Problemas con SQLEXEC no puedo guardar

 
Vista:
Imágen de perfil de Abel

Problemas con SQLEXEC no puedo guardar

Publicado por Abel (1 intervención) el 04/06/2015 18:27:07
Buenas amigos, no se porque no me permite guardar, al finalizar me dice que se guardo pero no guarda enla tabla sql, si es que hay alguien que pueda ayudarme seria genial, soy nuevo en este mundo de la programacion en FOX, pero me gusta. espero que alguien me ayude, gracias desde ya.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
vfechaing = Thisform.vfechaing.Value
vidcliente = Thisform.vidcliente.Value
vfechanac = Thisform.vfechanac.Value
vcinro = Thisform.vcinro.Value
vnombre = Thisform.vnombre.Value
vapellido = Thisform.vapellido.Value
vtelfijo = Thisform.vtelfijo.Value
vdireccion = Thisform.vdireccion.Value
vemail = Thisform.vemail.Value
vfax = Thisform.vfax.Value
vmovil = Thisform.vmovil.Value
vweb = Thisform.vweb.Value
If vmodifi = 0
	SQLExec(bd, "Insert into cliente (fechaing, idcliente, cinro, nombre, apellido, fechanac, telfijo, direccion, email, fax, movil, web, cod_usuario);
	Values (?vfechaing, ?vidcliente, ?vcinro, ?vnombre, ?vapellido, ?vfechanac, ?vtelfijo, ?vdireccion, ?vemail, ?vfax, ?vmovil, ?vweb, v_usuario)")
	=Messagebox("REGISTRO GRABADO...",0+64+0,"INFORMACION DEL SISTEMA")
	SQLExec(bd, "SELECT * FROM cliente","cliente")
	Index On idcliente To &vabmarc
	Thisform.limpiar()
	Thisform.ultimo()
	Thisform.vidcliente.Enabled= .F.
	Thisform.Refresh
Else
	SQLExec(bd, "UPDATE ciudad set nombre = ?vnombre, cod_usuario = ?v_usuario where cinro = ?vcinro")
	=Messagebox("REGISTRO MODIFICADO CORRECTAMENTE...", 0+64+0, "INFORMACION DEL SISTEMA")
	SQLExec(bd, "SELECT * FROM cliente","cliente")
	Thisform.limpiar()
	Thisform.ultimo()
	Thisform.vcinro.Enabled = .F.
Endif


al declarar cod_usuario
y en value v_usuario no me acepta grabar
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Problemas con SQLEXEC no puedo guardar

Publicado por Richard (2 intervenciones) el 05/06/2015 13:28:53
Abel, bienvenido a VFP!

En la consulta que expones, te ha faltado incluir el símbolo "?" antes de la variable v_usuario.

Puedes apoyarte en la función AError a detectar problemas en consultas SQL:

A modo de referencia, SQLExec devuelve:
a. Un número positivo si tu comando SQL se ha ejecutado con éxito,
b. 0 si tu comando SQL todavía se está ejecutando, o
c. -1 si tu comando SQL está mal estructurada o si hay un error de conexión.

Basado en esto, puedes hacer algo como:

1
2
3
4
5
6
7
8
9
10
*- Consulta SQL
lnResult = SQLExec(bd, "Insert into cliente (fechaing, idcliente, cinro, nombre, apellido, fechanac, telfijo, direccion, email, fax, movil, web, cod_usuario) ;
Values (?vfechaing, ?vidcliente, ?vcinro, ?vnombre, ?vapellido, ?vfechanac, ?vtelfijo, ?vdireccion, ?vemail, ?vfax, ?vmovil, ?vweb, ?v_usuario)")
 
*- Verificación de errores SQL
if lnResult < 0
   AError( laErr )
   = MessageBox( laErr( 2 ), 16, "Revise la sintaxis SQL" )
   return
endif


¿Qué versión de VFP usas?

--
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar