Ayuda con Mysql

Post Reply
jpcavagnaro
Posts: 35
Joined: Tue Oct 11, 2016 1:02 pm

Ayuda con Mysql

Post by jpcavagnaro »

Hola gente, buen día, necesito ayuda para conectarme con mysql.

Instale mysql, workbench, el driver y logré con el UDL generar la cadena de conexión.

El tema es que cuando quiero conectarme con ADODB no logro conectarme, tambien tengo instalado en otra pc sqlexpress y la conexión funciona perfecto.

La conexión es "Provider=MSDASQL.1;Password=Cava1234;Persist Security Info=True;User ID=root;Data Source=jpcavagnaro;Initial Catalog=restaurate"

Que me falta instalar?

Saludos.
Jorge.
russimicro
Posts: 179
Joined: Sun Jan 31, 2010 3:30 pm
Location: Bucaramanga - Colombia

Re: Ayuda con Mysql

Post by russimicro »

Buen dia. Espero le sirva

Johnson Russi

Code: Select all



static function ConnectToServerSql(oCon,cTipCon,cDirSer,cDatBas,cUseBas,cPasUse)

   

   LOCAL cPath := CURDRIVE() + ':\\' + CURDIR()+";"
   LOCAL lConnect := .f.
   LOCAL cDriSql := ""


   DO CASE

      CASE cTipCon == "MYSQL"

            cDriSql := "DRIVER={MySQL ODBC 3.51 Driver}; SERVER="+cDirSer+"; DATABASE="+cDatBas+"; "+;
                       "UID="+cUseBas+";PASSWORD="+cPasUse+"; OPTION=3"

      CASE cTipCon == "MSSQL"

           //cDriSql := "Provider=SQLOLEDB;Data Source=(local);Initial Catalog=MANAGER;User Id=sa;Password=xxx"
           cDriSql := "Provider=SQLOLEDB;Data Source="+cDirSer+";Initial Catalog="+cDatBas+";User Id="+cUseBas+";Password="+cPasUse+";"

   ENDCASE

  // cDriSql := "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=" + cPath // + "\"+M->cPatSis

//  cDriSql :=  "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+cPath+";Extended Properties=DBASE IV"


//   cDriSql :="DRIVER={PostgreSQL Unicode};Server=localhost;Port=5433;Database=russoft_01;UID=user_xxx;PWD=xxx;"


 //   cDriSql := "Provider=SQLOLEDB;Data Source=(local);Initial Catalog=MANAGER;User Id=sa;Password=xxx"


/*
    cDriSql := "Provider=PostgreSQL OLE DB Provider;"+;
               "Location=russoft1_zerus;"+;
               "Data Source=www.russoft.co;"+;
               "User ID=russoft1_zerus;"+;
               "PORT=5432;"+;
               "Password=901120;"


                //"PORT=5432;"  //  Extended"

*/

   if oCon == nil
      oCon                   := TOleAuto():new("ADODB.Connection")
      oCon:ConnectionString  := cDriSql
      TRY
         oCon:Open()
         lConnect := .t.
      CATCH
         oCon                  := nil
         MyMen("Error. No fue posible la conexi¢n con el servidor SQL" )
         return .F.
      END
   else
      lConnect := .t.
   endif

return lConnect


 
jpcavagnaro
Posts: 35
Joined: Tue Oct 11, 2016 1:02 pm

Re: Ayuda con Mysql

Post by jpcavagnaro »

No me funciona,

#include "fivewin.ch"
#include "ado.ch"

FUNCTION MAIN()


LOCAL cPath := CURDRIVE() + ':\\' + CURDIR()+";"
LOCAL lConnect := .f.
LOCAL cDriSql := ""


cDriSql := "DRIVER={MySQL ODBC 8.0 Unicode Driver};UID=root;PASSWORD=xxxx;PORT=3306;SERVER=localhost;DATABASE=restaurate; OPTION=3"

*"DRIVER={MySQL ODBC 3.51 Driver}; SERVER="+cDirSer+"; DATABASE="+cDatBas+"; "+;
* "UID="+cUseBas+";PASSWORD="+cPasUse+"; OPTION=3"


oCon := TOleAuto():new("ADODB.Connection")
oCon:ConnectionString := cDriSql
TRY
oCon:Open()
lConnect := .t.
CATCH oError
showError( oError )
END


return lConnect
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Re: Ayuda con Mysql

Post by Armando »

jpcavagnaro

Necesitas tener instalado el conector, lo tienes?

Este debe ser de la misma versión que tienes definida en la cadena de conexión

Driver={MySQL ODBC 5.1 Driver} o Driver={MySQL ODBC 3.51 Driver}

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
User avatar
nageswaragunupudi
Posts: 8017
Joined: Sun Nov 19, 2006 5:22 am
Location: India
Contact:

Re: Ayuda con Mysql

Post by nageswaragunupudi »

You can connect to MySql through ADO or directly with FWH inbuilt MySql library.
You propose to connect and work using ADO.

For this, you need to download and install MySql ODBC connector on every PC using your software. We assume you have installed the ODBC connector.

We advise you not to make your own connection strings for any server, be it MySql, MSSql, Oracle, etc. If you prepare your own connection strings you need to know the version of ODBC driver or OLEDB provider. When we provide software to several clients they may have already installed different versions of ODBC drivers/OLEDB providers.

Instead use FWH built-in ADO functions.

Code: Select all

oCn := FW_OpenAdoConnection( { "MYSQL", cServer, cDatabase/InitialCatalog, cUser, cPassword }, .t. )
if oCn == nil
   ? "fail"
else
   ? "connected"
   // do your work
   oCn:Close()
endif
 
You can use the same function for MSSQL, Oracle, etc by changing "MYSQL" to "MSSQL" or "ORACLE".

This function checks the version of ODBC driver/OLEDB provider installed on the target PC and uses the latest version installed.

In other words, your program will work on a PC with ODBC 5.1 installed or ODBC 8.0 installed.

All the FWH ADO functions support DBASE, FOXPRO, ACCESS, MSSQL, MYSQL, ORACLE.
They work with any other OLEDB provider if the programmer provides connection string.

Using FWH ADO functions greatly simplifies your work.
For all functions please see fwh\source\function\adofuncs.prg

For working with MySql, you may also consider using the inbuilt MySql library of FWH. For using this, you need not get the ODBC connectors installed on all your clients' PCs. You simply provide your exe with libmysql.dll (provided by FWH ).
Regards

G. N. Rao.
Hyderabad, India
jpcavagnaro
Posts: 35
Joined: Tue Oct 11, 2016 1:02 pm

Re: Ayuda con Mysql

Post by jpcavagnaro »

Armando wrote:jpcavagnaro

Necesitas tener instalado el conector, lo tienes?

Este debe ser de la misma versión que tienes definida en la cadena de conexión

Driver={MySQL ODBC 5.1 Driver} o Driver={MySQL ODBC 3.51 Driver}

Saludos
Hola Armando, tengo instalado el MySQL ODBC 8.0, tiene que ser la versión 3 o 5 ?

Saludos
Jorge.
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Re: Ayuda con Mysql

Post by Armando »

jpcavagnaro

Intenta con el conector de alguna de las dos versiones 3.51 o 5.1 y
en la cadena de conexión debes especificar que versión de conector
instalaste.

Driver={MySQL ODBC 5.1 Driver} o Driver={MySQL ODBC 3.51 Driver}

Cual es tu correo?

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
jpcavagnaro
Posts: 35
Joined: Tue Oct 11, 2016 1:02 pm

Re: Ayuda con Mysql

Post by jpcavagnaro »

Armando wrote:jpcavagnaro

Intenta con el conector de alguna de las dos versiones 3.51 o 5.1 y
en la cadena de conexión debes especificar que versión de conector
instalaste.

Driver={MySQL ODBC 5.1 Driver} o Driver={MySQL ODBC 3.51 Driver}

Cual es tu correo?

Saludos
jpcavagnaro@yahoo.com.ar
jpcavagnaro
Posts: 35
Joined: Tue Oct 11, 2016 1:02 pm

Re: Ayuda con Mysql

Post by jpcavagnaro »

Ya me pude conectar, me faltaba abrir el puerto.

Saludos.
Jorge.
jpcavagnaro
Posts: 35
Joined: Tue Oct 11, 2016 1:02 pm

Re: Ayuda con Mysql

Post by jpcavagnaro »

De nuevo, alguien me podria pasar un ejemplo de un abm, no logro abrir las tablas.

Algo me falta hacer seguro, porque por ej.

cSQL := "select * from clientes "

oRSSTK := CargaRecordSet( cSQL, oCon)

xbrowse( oRSSTK, "Fijate", .t.,,, .t., .t., .t. )

Esto con SQLServer me funciona perfecto.

Saludos
Jorge.
jpcavagnaro
Posts: 35
Joined: Tue Oct 11, 2016 1:02 pm

Re: Ayuda con Mysql

Post by jpcavagnaro »

Cree una base por Workbench y pude abrila sin problema, la que genere como ejemplo (que baje el sql) y no se porque no abre.

Pero bueno creando mis bases funciona por ahora todo bien.

Gracias

Saludos.
Jorge.
jpcavagnaro
Posts: 35
Joined: Tue Oct 11, 2016 1:02 pm

Re: Ayuda con Mysql

Post by jpcavagnaro »

Hola gente, tengo un problema, genero esta tabla:

CREATE TABLE Clientes1 (
id int(11) NOT NULL AUTO_INCREMENT,
Numero decimal( 6, 0),
Domicleg character( 100),
Zona decimal( 10, 0),
Con_iva decimal( 1, 0),
Cuit character( 13),
Nombre character( 40),
Domic character( 40),
Loca character( 40),
Tele character( 50),
Copo character( 10),
Vendedor decimal( 4, 0),
Ctacte character( 1),
Bonif decimal( 6, 2),
Tope decimal( 10, 2),
Email character( 30),
PRIMARY KEY (id)
)

y no puedo acceder, lo que descubro es que cambio los datos decimal por double y ahí si puedo abrirla.

porque puede ser este problema con los tipos de datos.

Saludos.
Jorge
Post Reply