Aplicación Cliente/Servidor
Hola a todos. Estoy desarrollando una aplicación cleinte/servidor, y la base de datos del servidor está bajo Visual foxPro, mi problema es que no se cómo conectarme desde el programa cliente, en visual foxpro, a la base de datos. el sqlexec() es para sql server. qué comando utilizo?
Hola.. Como estas..!
Mira este es el codigo para conectarte con sqlexec(), primero debes crear un ODBC y luego el resto es puro sql, mira la ayuda eso te servirá mucho
////en el init del form
PUBLIC Nx as Integer
PUBLIC x as Integer
Nx = SQLCONNECT("odbc_php")
IF Nx < 1
ERROR "Conexión no realizada."
ENDIF
consulta----
x=VAL(thisform.text1.Value)
SQLprepare(Nx, 'SELECT * FROM datos;
WHERE cedula=?x', 'mycursor')
SQLEXEC(Nx)
insertar----
u=thisform.text2.Value
y=thisform.text3.Value
z=thisform.text4.Value
SQLPREPARE(Nx, 'INSERT INTO datos(cedula,nombre,telefono);
VALUES(?u,?y,?z)')
SQLEXEC(Nx)
modificar----
u=thisform.text2.Value
y=thisform.text3.Value
z=thisform.text4.Value
SQLPREPARE(Nx, 'SELECT * FROM datos;
WHERE cedula=?u', 'mycursor')
SQLEXEC(Nx)
if(mycursor.cedula!=0) then
SQLPREPARE(Nx, 'UPDATE datos SET nombre=?y, telefono=?z;
WHERE cedula=?u')
SQLEXEC(Nx)
thisform.text2.Value=""
thisform.text3.Value=""
thisform.text4.Value=""
WAIT window("Datos modificados..! Presione una tecla")
ELSE
WAIT window("Cedula no encontrada..! Presione una tecla")
ENDIF
eliminar-----
u=thisform.text2.Value
y=thisform.text3.Value
z=thisform.text4.Value
SQLPREPARE(Nx, 'DELETE * FROM datos WHERE cedula=?u')
SQLEXEC(Nx)
Mira este es el codigo para conectarte con sqlexec(), primero debes crear un ODBC y luego el resto es puro sql, mira la ayuda eso te servirá mucho
////en el init del form
PUBLIC Nx as Integer
PUBLIC x as Integer
Nx = SQLCONNECT("odbc_php")
IF Nx < 1
ERROR "Conexión no realizada."
ENDIF
consulta----
x=VAL(thisform.text1.Value)
SQLprepare(Nx, 'SELECT * FROM datos;
WHERE cedula=?x', 'mycursor')
SQLEXEC(Nx)
insertar----
u=thisform.text2.Value
y=thisform.text3.Value
z=thisform.text4.Value
SQLPREPARE(Nx, 'INSERT INTO datos(cedula,nombre,telefono);
VALUES(?u,?y,?z)')
SQLEXEC(Nx)
modificar----
u=thisform.text2.Value
y=thisform.text3.Value
z=thisform.text4.Value
SQLPREPARE(Nx, 'SELECT * FROM datos;
WHERE cedula=?u', 'mycursor')
SQLEXEC(Nx)
if(mycursor.cedula!=0) then
SQLPREPARE(Nx, 'UPDATE datos SET nombre=?y, telefono=?z;
WHERE cedula=?u')
SQLEXEC(Nx)
thisform.text2.Value=""
thisform.text3.Value=""
thisform.text4.Value=""
WAIT window("Datos modificados..! Presione una tecla")
ELSE
WAIT window("Cedula no encontrada..! Presione una tecla")
ENDIF
eliminar-----
u=thisform.text2.Value
y=thisform.text3.Value
z=thisform.text4.Value
SQLPREPARE(Nx, 'DELETE * FROM datos WHERE cedula=?u')
SQLEXEC(Nx)
Si la base de datos esta en fox, y la aplicación tambien es en fox, la forma de conectarte sería usando directamente los comandos de fox para abrir tablas usando la ruta al servidor.
EJ: USE \SERVERCDATAtabla.dbf
Visual Fox no es un Servidor de Bases de Datos, por lo que el trabajo de conectarse y procesar la información la realiza el cliente, en estos casos el servidor lo único que hace es hospedar los archivos y nada mas.
Espero haber ayudado, sino es así no dudes en consultar nuevamente...saludos.
Pablo César.
EJ: USE \SERVERCDATAtabla.dbf
Visual Fox no es un Servidor de Bases de Datos, por lo que el trabajo de conectarse y procesar la información la realiza el cliente, en estos casos el servidor lo único que hace es hospedar los archivos y nada mas.
Espero haber ayudado, sino es así no dudes en consultar nuevamente...saludos.
Pablo César.
