FoxPro/Visual FoxPro - Ayuda altas en Sql Server

 
Vista:

Ayuda altas en Sql Server

Publicado por Carlos Lara (31 intervenciones) el 03/04/2007 16:09:46
que tal compañeros foxeros, espero me puedan ayudar con esto, ya que estoy migrando una aplicacion a cliente-servidor, la conexion a la BD me la hace correcta pero al dar de altas a registros me marca error, anexo codigo para ver si me pueden ayudar, gracias

la conexion me la hace bien que es esta primera parte

ncarGrup = SQLCONNECT("Sigma","Carlos","*****")
IF ncarGrup < 0
= MESSAGEBOX('No se puede Conectar a la Base de Datos', 16, 'SQL Connect Error')
ELSE
= MESSAGEBOX('Excelente conexion', 48, 'SQL Connect Error')
ENDIF

*-----------------------------------------------------------------------
aqui abro la tabla de productos y quiero pasar los registros a la tabla de sql, en la primera opcion que lo mando a memvar no me marca error pero no hace nada y en la segunda me marca error de sintaxis, podrian ayudarme por favor o si tiene un ejemplo se los agradecere mucho.

USE tblprod IN 1 ALIAS prod_
GO Top
DO WHILE !eof()
SCATTER memvar
* WAIT WINDOW "Codigo: " +M.cod+CHR(13)+"Descripcion:"+M.desc Nowait
SQLEXEC(ncarGrup, "Insert Into Tblprod FROM MEMVAR")
* SQLEXEC(ncarGrup, "Insert Into Tblprod (cod, desc_, desccorta, familia, med, medmax, *codbar, ucosto, factor, exis, ubica, cveprod, tipo, marca, estatus) Values (m.cod, m.desc_, *m.desccorta, m.familia, m.med, m.medmax, m.codbar, m.ucosto, m.factor, m.exis, *m.ubica, m.cveprod, m.tipo, m.marca, m.estatus")")
SKIP
ENDDO
*SQLDISCONNECT(nCarGrup)
use
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

RE:Ayuda altas en Sql Server

Publicado por Plinio (7841 intervenciones) el 03/04/2007 17:02:24
Lo que pasas en el SQLEXEC son comandos de Sql Server no de VFP y FROM MENVAR es parte de VFP no de Sql server.
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

RE:Ayuda altas en Sql Server

Publicado por Roman Suazo (2723 intervenciones) el 03/04/2007 17:14:53
*SQLEXEC(ncarGrup, "Insert Into Tblprod FROM MEMVAR")

Tenes que conocer la sintaxias del sql server y no la del fox para ejecutar los INSERTS, es decir, le estas mandando comandos ue no reconoce el servidor.

* SQLEXEC(ncarGrup, "Insert Into Tblprod (cod, desc_, desccorta, familia, med, medmax, *codbar, ucosto, factor, exis, ubica, cveprod, tipo, marca, estatus) Values (m.cod, m.desc_, *m.desccorta, m.familia, m.med, m.medmax, m.codbar, m.ucosto, m.factor, m.exis, *m.ubica, m.cveprod, m.tipo, m.marca, m.estatus")")

Aqui tenes que poner un ? antes de cada variable y siempre tenes que apegarte a la sintaxis del sql server que estes usando
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

RE:Ayuda altas en Sql Server

Publicado por Carlos Lara (31 intervenciones) el 03/04/2007 23:18:18
siempre pense que era la misma sintaxis, voy a conseguirme un manual de sql entonces y seguire practicando y molestando, de antemano muchas gracias.
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

RE:Ayuda altas en Sql Server

Publicado por matus (4 intervenciones) el 13/04/2007 16:20:00
para una mejor respuesta utiliza primero el comando sqlprepare con la instruccion a ejecutar y despues el sqlexec
ejemplo:

sqlprepare(conexion,insert into x(campo1,campo2,...) values (?l_valor1,?l_valor2....))
l_valor1=valor
l_valor2=valor2
l_error=sqlexec(conexion)
i
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