FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Mysql y ADO
Posts: 711
Joined: Thu Oct 06, 2005 09:57 PM
Mysql y ADO
Posted: Thu Jul 24, 2008 04:01 AM

驴Para atacar una base de datos MySql con ADO, alguien usa un provider OLEDB o solamente se est谩 realizando la conexi贸n a trav茅s de ODBC?

Muchas gracias.

Un saludo



Manuel
Posts: 581
Joined: Tue Oct 11, 2005 11:28 AM
Mysql y ADO
Posted: Thu Jul 24, 2008 01:24 PM

Manuel,

Cuando hice algunos testes con ADO y MySQL (hace mucho tiempo) yo los hice con MyOLEDB, de MySQL. Date una vuelta por el sitio de MySQL o mira aca: http://sourceforge.net/projects/myoledb/

Saludos,

Kleyber Derick



FWH / xHb / xDevStudio / SQLLIB
Posts: 883
Joined: Tue Oct 11, 2005 11:57 AM
Mysql y ADO
Posted: Thu Jul 24, 2008 01:33 PM

Manuel

Yo utilizo el Cliente ODBC 3.5.1, ya medio antiguo y me he encontrado con la sorpresa que existe una version mas nueva, del 15 de abril de este a帽o, que es la 5.1.4 (aun no la pruebo,la estoy descargando)

Bueno el tema es que la uso sin problemas.

Espero te sirva.
Desde Chile
Adolfo

;-) Ji,ji,ji... buena la cosa... "all you need is code"

http://www.xdata.cl - Desarrollo Inteligente
----------
Asus TUF F15, 32GB Ram, 2 * 1 TB NVME M.2, GTX 1650
Posts: 711
Joined: Thu Oct 06, 2005 09:57 PM
Mysql y ADO
Posted: Fri Jul 25, 2008 05:29 AM

Kleyber,

Funciona perfectamente.

Muito obrigado.

Un saludo



Manuel
Posts: 711
Joined: Thu Oct 06, 2005 09:57 PM
Mysql y ADO
Posted: Fri Jul 25, 2008 05:32 AM

Adolfo,

Cuando en mis aplicaciones uso una BD utilizo normalmente Oracle. Pero estoy dise帽ando un programa de prueba, para que de manera facil, pueda trabajar, indistintamente, con cualquiera de las BD conocidas (MySql, Oracle, Postgre, SqlServer, etc).

Voy a estudiar tu ADOBASE porque seguro que de su c贸digo, aprender茅 bastantes cosas.

Muchas gracias.

Un saludo



Manuel
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Mysql y ADO
Posted: Sun Aug 03, 2008 05:48 PM
Manuel:

He intentado probar MyOleDb con la siguiente conexi贸n:

oApp:oCon:ConnectionString := "Provider=MySQLProv;Location=localhost;Data Source=sapwin;User Id=root;Password=mipass;"


Pero no tengo 茅xito, podr铆as compartir tu c贸digo y experiencia ?

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 711
Joined: Thu Oct 06, 2005 09:57 PM
Mysql y ADO
Posted: Sun Aug 03, 2008 10:04 PM

Armando,

Primero decirte que la BD con la que trabajo es Oracle que me parece, junto con Postgres, la mas fiable. Con MySql tan solo estoy haciendo mi primeros pinitos para usarla en internet. Me imagino que en este foro hay colegas con muchisima mas experiencia que yo con MySql.

Seg煤n me aconsej贸 Kleyber en este mismo tema, baj茅 el provider de MySql, lo instal茅 y funciona perfectamente. Utilizo la misma cadena de conexi贸n que con Oracle, para poder cambiar de una BD a otra, sin cambiar el resto del c贸digo.

1) 驴Has instalado el provider OLEDB?.

2) En caso afirmativo, yo realizo la conexi贸n de la siguiente forma:

cProv := "MySqlProv.3.9" // este es el provider
cHost := "prueba" // esta es la BD.
cUser := "root" // usuario
cPass := "*" // clave usuario

oCon := CreateObject('ADODB.Connection')

oCon:ConnectionString := "Provider=" + cProv + ";" + ;
"Data Source= " + cHost + ";" + ;
"User ID=" + cUser + ";" + ;
"Password=" + cPass + ";"

TRY
oCon:Open()
lSeguir := .t.
CATCH oError
AdoError(oCon, oError) // funcion personal
lSeguir := .f.
END

Un saludo



Manuel
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Mysql y ADO
Posted: Mon Aug 04, 2008 12:24 AM
Manuel:

Gracias por la respuesta, pr谩cticamente tenemos lo mismo, solo que me queda una duda en parte de tu c贸digo, la duda es que no veo la direcci贸n del host (cHost := "localhost"), en su lugar veo el nombre de la database

cHost := "prueba" // esta es la BD.


en oracle no es necesario ???

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 711
Joined: Thu Oct 06, 2005 09:57 PM
Mysql y ADO
Posted: Mon Aug 04, 2008 04:55 AM
Armando wrote:Manuel:

Gracias por la respuesta, pr谩cticamente tenemos lo mismo, solo que me queda una duda en parte de tu c贸digo, la duda es que no veo la direcci贸n del host (cHost := "localhost"), en su lugar veo el nombre de la database

cHost := "prueba" // esta es la BD.


en oracle no es necesario ???

Saludos


En Oracle es diferente. Oracle trabaja con una sola BD y cada usuario de la BD, tiene tablas propias. En Host se pone el nombre del OracleService (puede haber varios) que se encuentra en la tabla tsname.
Un saludo



Manuel
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Mysql y ADO
Posted: Mon Aug 04, 2008 12:13 PM

Gracias Manuel

SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 711
Joined: Thu Oct 06, 2005 09:57 PM
Mysql y ADO
Posted: Mon Aug 04, 2008 08:23 PM

Armando,

Se me olvido decirte que con Mysql estoy trabajando en local. Me imagino que para trabajar con un servidor ser谩 necesario indicar el host.

Un saludo



Manuel
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Mysql y ADO
Posted: Mon Aug 04, 2008 09:56 PM

Manuel:

Llevas raz贸n con MySql en forma local es tan simple como:

server=localhost

pero en forma remota debemos poner la IP del servidor, por ejemplo:

server=147.187.347.157

Pero ya entran las complicaciones, que pasa si no cuentas con IP fija ?,
esa es otra historia !.

Saludos

SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 581
Joined: Tue Oct 11, 2005 11:28 AM
Mysql y ADO
Posted: Tue Aug 05, 2008 11:55 AM

Armando,

Para estes casos puedes usar el NO-IP (www.no-ip.com) or DDNS (http://www.dyndns.com/services/dns/dyndns/) donde puedes asignar un host fijo, mismo que tu IP sea din谩mico. Quizas esto te ayude.

Saludos,

Kleyber Derick



FWH / xHb / xDevStudio / SQLLIB
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Mysql y ADO
Posted: Tue Aug 05, 2008 04:47 PM

Kleyber:

Gracias por la respuesta, efectivamente as铆 lo hago pero con MySql y ODBC, sin embargo con MyOleDb no logro tener 茅xito.

Se hace la conexi贸n, al parecer bien, pero al intentar abrir la DataBase me dice que no la encuentra.

Saludos

SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 711
Joined: Thu Oct 06, 2005 09:57 PM
Mysql y ADO
Posted: Tue Aug 05, 2008 09:04 PM

Armando,

驴Porque no tratas de probar con FdataLink()? Si despues de poner los datos, y pulsar PROBAR CONEXION, la realiza con 茅xito, le das a ACEPTAR y te devuelve la cadena de conexi贸n. La funci贸n original es de Biel.

FUNCTION FDATALINK ( )
LOCAL oDataLink := CreateObject("Datalinks")
LOCAL oCon := oDataLink:PromptNew()

IF !EMPTY(oCon)
valert (oCon:ConnectionString)
RETURN oCon:ConnectionString
ELSE
RETURN ' '
ENDI

RETURN nil

Un saludo



Manuel