Pasar tablas SQL Server a DBF

Re: Pasar tablas SQL Server a DBF

Postby nageswaragunupudi » Sun Jul 16, 2017 3:38 pm

Excluding the CASE Table, export was successful.

The problem may be because CASE is a reserved word.
This name will keep creating problems in any other database too, Please consider renaming the table
Regards

G. N. Rao.
Hyderabad, India
User avatar
nageswaragunupudi
 
Posts: 10690
Joined: Sun Nov 19, 2006 5:22 am
Location: India

Re: Pasar tablas SQL Server a DBF

Postby Compuin » Sun Jul 16, 2017 3:53 pm

nageswaragunupudi wrote:If you are using ADO for MySql, you can use FW_AdoImportFromDBF()
If you are using FWMYSQL for connecting to MySql, you can use oCn:ImportFromDBF()



Thanks

Do you have an example to use FW_AdoImportFromDBF() ?

I tried with the sample from wiki and it didn't work
FWH 20.12
Hbmk2 32/64 Bits (Build 19.29.30133)
Microsoft Visual C 32 Bits
MySql 8.0.24 32/64 Bits
VS Code
Compuin
 
Posts: 1214
Joined: Tue Dec 28, 2010 1:29 pm
Location: Quebec, Canada

Re: Pasar tablas SQL Server a DBF

Postby nageswaragunupudi » Sun Jul 16, 2017 5:36 pm

Code: Select all  Expand view  RUN

FW_AdoImportFromDBF( oCn, "c:\fwh\samples\states.dbf" )  // use lower case
oRs := FW_OpenRecordSet( oCn, "states" )
XBROWSER oRs
 
Regards

G. N. Rao.
Hyderabad, India
User avatar
nageswaragunupudi
 
Posts: 10690
Joined: Sun Nov 19, 2006 5:22 am
Location: India

Re: Pasar tablas SQL Server a DBF

Postby Compuin » Tue Jul 18, 2017 5:52 pm

nageswaragunupudi wrote:
Code: Select all  Expand view  RUN

FW_AdoImportFromDBF( oCn, "c:\fwh\samples\states.dbf" )  // use lower case
oRs := FW_OpenRecordSet( oCn, "states" )
XBROWSER oRs
 


Thanks Mr Rao,

It's work for just one dbf but I have 2014 dbf to import into MySql.

Which is the best way to do it for several dbfs ?

I'm doing on this way but it doesn't work

Code: Select all  Expand view  RUN
#include "FiveWin.ch"

//----------------------------------------------------------------//

REQUEST DBFCDX

function Main()
   local cServer     := "localhost"
   local cDatabase   := "SBODemoUS"
   local cUser       := "root"
   local oCn, oRs, aTables, cTable
   
   oCn := FW_OpenAdoConnection( "MYSQL, localhost, SBODemoUS, root", .t. )
   
   if oCn == nil
      ? "Connect Fail"
   else
      ? "connected"
   endif

   aTables := FW_AdoTables( oCn )          
   
   if oCn == nil
      ? "Connect Fail"
   else
      XBROWSER aTables
   endif  
   
   for each cTable in aTables
      FW_AdoImportFromDBF( oRs, cFileSetExt( cTable, "dbf" ), .t. )
      oRs   := FW_OpenRecordSet( oCn, cTable )
      oRs:Close()
   next  
 
   ? "IMPORTACION FINALIZADA"
       
   oCn:Close()

return nil
//----------------------------------------------------------------//
FWH 20.12
Hbmk2 32/64 Bits (Build 19.29.30133)
Microsoft Visual C 32 Bits
MySql 8.0.24 32/64 Bits
VS Code
Compuin
 
Posts: 1214
Joined: Tue Dec 28, 2010 1:29 pm
Location: Quebec, Canada

Re: Pasar tablas SQL Server a DBF

Postby Compuin » Wed Jul 19, 2017 1:13 pm

Cristobal,

Tendra alguna sugerencia para leer varios DBF e Importar a MySql?
FWH 20.12
Hbmk2 32/64 Bits (Build 19.29.30133)
Microsoft Visual C 32 Bits
MySql 8.0.24 32/64 Bits
VS Code
Compuin
 
Posts: 1214
Joined: Tue Dec 28, 2010 1:29 pm
Location: Quebec, Canada

Re: Pasar tablas SQL Server a DBF

Postby cnavarro » Wed Jul 19, 2017 1:18 pm

Por qué no puedes usar el codigo de Mr Rao?

No he entendido el problema que tienes con tu codigo anterior
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Pasar tablas SQL Server a DBF

Postby Compuin » Wed Jul 19, 2017 1:22 pm

cnavarro wrote:Por qué no puedes usar el codigo de Mr Rao?

No he entendido el problema que tienes con tu codigo anterior


Tengo varios Dbf (son mas de 2000) y el codigo de Mr Rao es solo para un Dbf

Alli es donde me tranque
FWH 20.12
Hbmk2 32/64 Bits (Build 19.29.30133)
Microsoft Visual C 32 Bits
MySql 8.0.24 32/64 Bits
VS Code
Compuin
 
Posts: 1214
Joined: Tue Dec 28, 2010 1:29 pm
Location: Quebec, Canada

Re: Pasar tablas SQL Server a DBF

Postby cnavarro » Wed Jul 19, 2017 1:24 pm

Pero te conecta correctamente al servidor?
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Pasar tablas SQL Server a DBF

Postby cnavarro » Wed Jul 19, 2017 1:30 pm

El problema lo tienes, porque lo estás haciendo al revés

La instrucción
Code: Select all  Expand view  RUN

aTables := FW_AdoTables( oCn )
 

es incorrecta, eso te devuelve las tablas que hay en el servidor, y tú necesitas los dbf que vas a importar

Tienes que leer todos los dbf para pasárselos a la function de importación

Code: Select all  Expand view  RUN


aTables := HB_dirScan( cPath, "*.dbf", "A" )   // Por ejemplo
XBrowse( aTables )
 


Después haces un For .... Next y le vas aplicando cada elemento de la tabla a la function de importacion ( ojo con añadirle el path al nombre si es necesario ), todo en minúsculas eso si
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Pasar tablas SQL Server a DBF

Postby Compuin » Wed Jul 19, 2017 1:34 pm

cnavarro wrote:Pero te conecta correctamente al servidor?


Si

El programa funciona y conecta pero no puede importar el Dbf a la base de datos de mysql
FWH 20.12
Hbmk2 32/64 Bits (Build 19.29.30133)
Microsoft Visual C 32 Bits
MySql 8.0.24 32/64 Bits
VS Code
Compuin
 
Posts: 1214
Joined: Tue Dec 28, 2010 1:29 pm
Location: Quebec, Canada

Re: Pasar tablas SQL Server a DBF

Postby cnavarro » Wed Jul 19, 2017 1:35 pm

Has leido mi post anterior?
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Pasar tablas SQL Server a DBF

Postby Compuin » Wed Jul 19, 2017 1:35 pm

cnavarro wrote:El problema lo tienes, porque lo estás haciendo al revés

La instrucción
Code: Select all  Expand view  RUN

aTables := FW_AdoTables( oCn )
 

es incorrecta, eso te devuelve las tablas que hay en el servidor, y tú necesitas los dbf que vas a importar

Tienes que leer todos los dbf para pasárselos a la function de importación

Code: Select all  Expand view  RUN


aTables := HB_dirScan( cPath, "*.dbf", "A" )   // Por ejemplo
XBrowse( aTables )
 


Después haces un For .... Next y le vas aplicando cada elemento de la tabla a la function de importacion ( ojo con añadirle el path al nombre si es necesario ), todo en minúsculas eso si



Tengo los Dbf en el mismo directorio que el ejecutable....no necesito path alli?
FWH 20.12
Hbmk2 32/64 Bits (Build 19.29.30133)
Microsoft Visual C 32 Bits
MySql 8.0.24 32/64 Bits
VS Code
Compuin
 
Posts: 1214
Joined: Tue Dec 28, 2010 1:29 pm
Location: Quebec, Canada

Re: Pasar tablas SQL Server a DBF

Postby Compuin » Wed Jul 19, 2017 1:37 pm

Compuin wrote:
cnavarro wrote:El problema lo tienes, porque lo estás haciendo al revés

La instrucción
Code: Select all  Expand view  RUN

aTables := FW_AdoTables( oCn )
 

es incorrecta, eso te devuelve las tablas que hay en el servidor, y tú necesitas los dbf que vas a importar

Tienes que leer todos los dbf para pasárselos a la function de importación

Code: Select all  Expand view  RUN


aTables := HB_dirScan( cPath, "*.dbf", "A" )   // Por ejemplo
XBrowse( aTables )
 


Después haces un For .... Next y le vas aplicando cada elemento de la tabla a la function de importacion ( ojo con añadirle el path al nombre si es necesario ), todo en minúsculas eso si



Tengo los Dbf en el mismo directorio que el ejecutable....no necesito path alli?


Voy a probar y te comento
FWH 20.12
Hbmk2 32/64 Bits (Build 19.29.30133)
Microsoft Visual C 32 Bits
MySql 8.0.24 32/64 Bits
VS Code
Compuin
 
Posts: 1214
Joined: Tue Dec 28, 2010 1:29 pm
Location: Quebec, Canada

Re: Pasar tablas SQL Server a DBF

Postby cnavarro » Wed Jul 19, 2017 1:39 pm

El for seria algo asi

Code: Select all  Expand view  RUN


   For x =1 to Len( aTables )

        FW_AdoImportFromDBF( oCn, lower( aTables[ x ][ 1 ] ) )

   Next x

 


O incluso

Code: Select all  Expand view  RUN

    AEVal( aTables, { | a | FW_AdoImportFromDBF( oCn, lower( a[ 1 ] ) ) } )

 
Last edited by cnavarro on Wed Jul 19, 2017 1:41 pm, edited 1 time in total.
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6552
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Pasar tablas SQL Server a DBF

Postby Compuin » Wed Jul 19, 2017 1:40 pm

Colocandolo asi

Code: Select all  Expand view  RUN
aTables := HB_dirScan( "*.dbf", "A" )   // Por ejemplo
   XBrowse( aTables )


Me trae el Xbrowse vacio

Los dbf estan en el mismo directorio del ejecutable
FWH 20.12
Hbmk2 32/64 Bits (Build 19.29.30133)
Microsoft Visual C 32 Bits
MySql 8.0.24 32/64 Bits
VS Code
Compuin
 
Posts: 1214
Joined: Tue Dec 28, 2010 1:29 pm
Location: Quebec, Canada

PreviousNext

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 44 guests