Professional Documents
Culture Documents
********************
Hola q tal, tengo una aplicacion construida en visual basic
con una base de datos en access pero necesito conectar
esa aplicacion a una base datos q esta en mysql y q
reside en un servidor de un proveedor de servicios de
internet, de q manera puedo hacerlo, gracias.
Quizs le interese
Visual fox pro y mysql (Con solucin)
Php, mysql con IIS (Con solucin)
IIS+PHP+MySQL
Mysql con iis
Mysql
PHP GD y MySQL
PHP + MySQL
Php y mysql
Fecha: 28/07/2005
Mensaje:
Pasos;
Public cn As ADODB.Connection
despues en load ;
cn.ConnectionString = conecta
cn.open
estas son ;
mira la sintaxis
Set rs = cn.Execute(strqry)
********************************************
Introduccin a las capacidades Cliente-Servidor
****************************************
* Programa de ejemplo
*
* con SQL pass-through
*
*
*
* Conexin al servidor Oracle con un
*
* Data Source de ODBC
*
****************************************
nConexion = SQLCONNECT ;
( "ORADESA", "PALMUN", "PASSWORD" )
IF nConexion < 1
ERROR "Conexin no realizada."
ENDIF
****************************************
* Ejecucin de una consulta al servidor*
****************************************
IF 0 < SQLEXEC( nConexion, ;
"SELECT USUARIOS.NOMBRE,"+;
"USUARIOS.APELLIDOS,"+;
"APLICACIONES.APLICACION,"+;
"APLICACIONES.VERSION,"+;
"APLICACIONES.COMENTARIO "+;
"FROM USUARIOS, APLICACIONES, ;
"USER_APLI "+;
"WHERE ;
"USUARIOS.NOMBRE_CORTO =
USER_APLI.NOMBRE_CORTO"+;
"AND USER_APLI.ORDEN =
APLICACIONES.ORDEN",;
"user_apli" )
ERROR "Ejecucin SQL incorrecta."
ENDIF
******************************************
* Si se quiere, se pueden visualizar
*
* en un Browse
*
******************************************
BROWSE NOWAIT
******************************************
* Se modifican los datos en Oracle
*
******************************************
IF 0 < SQLEXEC( nConexion, ;
"UPDATE USUARIOS SET"+ ;
"USUARIOS.NOMBRE = 'PEDRO'"+;
"WHERE USUARIO.NOMBRE = 'JORGE '" )
ERROR "Ejecucin SQL incorrecta."
ENDIF
***********************************
* Desconexin del Servidor
*
***********************************
=SQLDISCONNECT( nConexion )
***********
* Fin
*
***********
Como se puede ver, el esquema de desarrollo es simple, por lo menos existir un
conexin a una fuente de datos de ODBC por medio de SQLCONNECT, una o varias
ejecuciones de sentencias SQL por medio de SQLEXEC y un cierre de la conexin
con SQLDISCONNECT.
Este esquema se puede perfeccionar y completar definiendo el modo de realizar las
transacciones, definiendo ejecuciones asncronas o batch, etc.. Pero en definitiva el
sistema es simple y las posibilidades son muchsimas.
SQLCANCEL
SQLCOLUMS
SQLCOMMIT
SQLCONNECT
SQLDISCONNECT
SQLEXEC
SQLGETPROP
SQLMORERESULT
SQLROLLBACK
SQLSETPROP
SQLSTRINGCONNECT
SQLTABLES
Por medio de este diseador podemos definir todas las caractersticas de una conexin
a bases de datos por medio de ODBC de forma sencilla y sin necesidad de utilizar las
funciones SQLSETPROP y SQLGETPROP para su configuracin. Esta conexin se
almacena dentro de la base de datos (.DBC) y est disponible siempre que abramos la
base de datos en cuestin.
Creacin de Vistas sobre tablas remotas: CREATE SQL VIEW
Otra posibilidad de trabajo diferente al uso de SQL pass-through es la utilizacin de
Vistas Remotas. Las vistas estn definidas en las bases de datos (.DBC), junto a las
conexiones, tablas y procedimientos almacenados y pueden referirse tanto a datos
locales (DBF) como a datos remotos (obtenidos por medio de ODBC).
Para definir una vista y sus propiedades podemos utilizar una serie de ordenes SQL o
utilizar el entorno de desarrollo. La orden bsica para crear vistas es CREATE SQL
VIEW. Con ella podremos crear una vista sobre tablas remotas. El caso ms sencillo es
realizar la vista sobre todos las columnas de una tabla, para ello la sentencia es
simplemente :
Una vez seleccionada la conexin ODBC se nos abrir el Diseador de Vistas, muy
similar al generador de consultas. En este diseador seleccionaremos las tablas
remotas sobre las que deseamos hacer la vista. En este caso hemos seleccionado las
tres tablas relacionadas que venimos utilizando, a fin de obtener la vista con datos de
las tres. La definicin puede llegar a ser muy sencilla -todos los datos de una sla
tabla- o muy compleja -pudiendo definir multitud de parmetros, selecciones, rdenes,
agrupacin, campos a visualizar y criterios de actualizacin.
Todas las operaciones que realizamos sobre la vista, como aadir un registro, o
modificar un dato, se corresponden a operaciones sobre las tablas originales, de este
modo si realizamos una modificacin en los datos de la vista, estamos modificando
automticamente los datos en las tablas remotas y si alguien realiza un cambio en un
valor en la tabla remota, nosotros observaremos ese cambio en la vista.
Podemos no darnos cuenta de la importancia de este hecho, podemos trabajar con
datos remotos como si fueran datos de Visual FoxPro, manteniendo una total
integridad entre la vista remota que maneja Visual FoxPro y los datos del servidor SQL,
sin que sea necesario por nuestra parte ningn cdigo especfico para ello,
simplemente definiendo los datos como una vista remota.
Un ejemplo. Sobre la vista que hemos definido anteriormente vamos a modificar
algunos valores y esta modificacin ser realizada automticamente en las base de
datos remota.
********************************************
*
* Programa de ejemplo con vistas
*
*******************************************
***************************
* Abre la Base de Datos
*
***************************
OPEN DATABASE Data1
*******************************************
* Abre la vista sobre tablas de Oracle
*
*******************************************
USE User_apli
*******************************************
* Si se quiere, se pueden visualizar en
*
* un Browse
*
*******************************************
BROWSE NOWAIT
******************************************
* Se modifican los datos en Oracle
*
******************************************
REPLACE Nombre WITH "PEDRO" FOR Nombre == "JORGE
"
***********
* Fin
*
***********
Las posibilidades son inmensas, podemos relacionar tablas locales con vistas remotas,
realizar todo tipo de operaciones sobre los datos remotos, realizar bsquedas,
modificaciones, etc. Es prcticamente indiferente trabajar sobre tablas locales que
sobre vistas remotas, es decir, gracias a la capacidad de Visual FoxPro de definir vistas
remotas podremos trabajar en un entorno Cliente-Servidor de forma transparente.
Asistente para Upsizing
Gracias a la enorme similitud en el trabajo con tablas locales y con vistas remotas, es
posible realizar las labores de desarrollo sobre vistas o tablas locales y en un momento
dado, cercano a la finalizacin del proyecto, realizar una migracin de las estructuras
de datos y relaciones a un Servidor SQL tipo SQL-Server u ORACLE. Esto nos permite
desarrollar sin necesidad de disponer de un servidor SQL, siempre costoso.
Para ayudar en esta labor de migracin desde las tablas y vistas locales a tablas en un
servidor SQL existe el "Upsizing Wizard" (o asistente de 'upsizing'), que nos facilita el
traslado del diseo de nuestra base de datos desde Visual FoxPro a un servidor de
Bases de Datos.
Si bien es posible que en la versin definitiva de Visual FoxPro el asistente tenga
algunas modificaciones sobre la versin beta actual, sta es una de las pantallas del
mismo :