SQL to DBF

You can share your experience with HMG. Share with some screenshots/project details so that others will also be benefited.

Moderator: Rathinagiri

User avatar
fchirico
Posts: 324
Joined: Sat Aug 23, 2008 11:27 pm
Location: Argentina

Re: SQL to DBF

Post by fchirico » Tue Mar 16, 2010 3:29 pm

luisvasquezcl wrote:Hola Fernando.
en este mismo foro encontraras el demo que hice browseado.
allí hay un archivo que se llama adodb.ch que contiene las definiciones de tipos de datos.
espero te sea de utilidad.
saludos cordiales,
luis vasquez
Gracias Luis!

Estuve mirando, pero los tipos de datos de Access no coinciden con los de MS-SQL.

Una pregunta... que es el tipo de datos "F" ?
Lo ví aquí:

"ELSEIF rs:fields(cTemp):Type = adDouble
cType = 'F'"
Saludos, Fernando Chirico.

User avatar
Steed
Posts: 304
Joined: Sat Dec 12, 2009 3:40 pm
Been thanked: 2 times

Post by Steed » Tue Mar 16, 2010 4:19 pm

Ok Gracias

User avatar
luisvasquezcl
Posts: 1034
Joined: Thu Jul 31, 2008 3:23 am
Location: Chile
Has thanked: 11 times
Been thanked: 14 times
Contact:

Post by luisvasquezcl » Wed Mar 17, 2010 1:23 am

Hola Fernando,
la F es para float... indicando que va con decimales el valor (eso es para uso interno del browseado ... "que manera de perder el tiempo con ese control ....8)")
IMHO, No sé si los tipos de datos definidos para Ado puedan ser distintos que para mssql... puede que falten algunos tipos pero no que sean distintos.
De todas formas, la recuperación de datos a través de ado es distinto que con odbc... algunos datos dan problemas, sobre todo los numéricos. no sé por qué pero los devuelve como texto.
Con ado trabajas directo con oledb y conversas en forma nativa con la base de datos , por lo que con seguridad podrás obtener los datos correctos y mucho más ràpido.
Otra característica de Ado es que puedes acceder a muchas bases de datos o archivos con solo cambiar el string de conexion... asi de facil; dale una mirada a ADORDD allí podras ver que puedes conectar a Oracle, MSSql, MySql, Dbf, Paradox, txt, xls, claro que es sólo para windows, no como odbc que es universal, pero no estamos en el tema de la multiplataforma sino en la multiconexion 8))).
Saludos cordiales,
Luis Vasquez

User avatar
fchirico
Posts: 324
Joined: Sat Aug 23, 2008 11:27 pm
Location: Argentina

Post by fchirico » Wed Mar 17, 2010 3:30 am

luisvasquezcl wrote:Hola Fernando,
la F es para float... indicando que va con decimales el valor (eso es para uso interno del browseado ... "que manera de perder el tiempo con ese control ....8)")
Ok, gracias!
IMHO, No sé si los tipos de datos definidos para Ado puedan ser distintos que para mssql... puede que falten algunos tipos pero no que sean distintos.
Me refiero a que el número de tipo de dato no es lo mismo, por ejemplo en TODBC() el tipo de dato NUMERIC es 2 y en tu .CH no recuerdo cual pero no es NUMERIC.
De todas formas, la recuperación de datos a través de ado es distinto que con odbc... algunos datos dan problemas, sobre todo los numéricos. no sé por qué pero los devuelve como texto.
Con ado trabajas directo con oledb y conversas en forma nativa con la base de datos , por lo que con seguridad podrás obtener los datos correctos y mucho más ràpido.
Otra característica de Ado es que puedes acceder a muchas bases de datos o archivos con solo cambiar el string de conexion... asi de facil; dale una mirada a ADORDD allí podras ver que puedes conectar a Oracle, MSSql, MySql, Dbf, Paradox, txt, xls, claro que es sólo para windows, no como odbc que es universal, pero no estamos en el tema de la multiplataforma sino en la multiconexion 8)))
Gracias por los consejos, miraré ADORDD!!
Saludos, Fernando Chirico.

User avatar
swapan
Posts: 242
Joined: Mon Mar 16, 2009 4:23 am
Location: Kolkata, India
Contact:

Post by swapan » Wed Mar 17, 2010 4:13 am

Excellent Fernando & Thanks a lot for sharing!
It can develop into a very useful tool when such an issue of data exporting comes......
Thanks & Regards,
Swapan Das

http://www.swapandas.com/

User avatar
luisvasquezcl
Posts: 1034
Joined: Thu Jul 31, 2008 3:23 am
Location: Chile
Has thanked: 11 times
Been thanked: 14 times
Contact:

Post by luisvasquezcl » Thu Mar 18, 2010 2:52 am

Hola Fernando.
me da la impresion que todbc trata de simplificar las cosas tratando los datos como uno solo en el caso de los numéricos.
el tema es que hay varios tipos de datos numéricos y estan definidos en el .ch.
Todos sabemos que en las bases de datos los tipos de datos son muchos más que los que usamos en los dbf por lo que corresponde definir y usar lo que es realmente y no lo que quisieramos que fuera. uuffff, que me salió filosófico .... :lol:
bueno, fuera de bromas, la clase todbc no creo que esté terminada y además no supera estos simples problemas como los tipos de datos que es básico.... por eso no la recomiendo.
saludos cordiales,
luis vasquez.

User avatar
fchirico
Posts: 324
Joined: Sat Aug 23, 2008 11:27 pm
Location: Argentina

Post by fchirico » Thu Mar 18, 2010 12:13 pm

luisvasquezcl wrote:Hola Fernando.
me da la impresion que todbc trata de simplificar las cosas tratando los datos como uno solo en el caso de los numéricos.
luis vasquez.
Luis, gracias por tus aclaraciones.

No estoy de acurdo con esta afirmación, ya que otros campos numéricos como INT, DECIMAL, y NUMERIC los trata sin problemas.

Quizá TODBC() no sea el ideal, lo evaluaré, pero me pareció muyyyy rápida , fíjate en mi primer post que menciono que RECUPERO casi 1 millón de registros ( 957.000 ) y luego los IMPORTO a un DBF en 32 segundos.

Estoy tratando de contactarme con el autor de la clase TODBC (Felipe G. Coury , pero no doy con él, aunque los mails no los devuelve, signo de que la casilla existe ) para ver si puede actualizar "su clase". De lo contrario deberé buscar otra forma de leer los datos.

Te aclaro que en mi aplicación la conección a la base SQL no es ODBC, es nativa de SQL.
Solo uso TODBC() para recuperar la estructura y contenido de los campos, y también para crear la conección pero no la hago por medio de un DSN sino de "SQL Native Client"

Un abrazo!
Saludos, Fernando Chirico.

User avatar
luisvasquezcl
Posts: 1034
Joined: Thu Jul 31, 2008 3:23 am
Location: Chile
Has thanked: 11 times
Been thanked: 14 times
Contact:

Post by luisvasquezcl » Thu Mar 18, 2010 12:54 pm

Hola Fernando.
Hice pruebas con todbc hace algunos años y no me gustó por los problemas que comentabamos con los tipos de dato y por la velocidad que para recuperar una tabla que tengo de prueba con un poco más de 11 mil registros en Access se demoraba bastante.
De todas formas me interesaba darte mi opinión sobre la clase todbc, lamentablemente no se ha actualizado siendo que es una herramienta tremendamente útil ya que hay muchas bases de datos que no tienen drivers oledb pero sí para odbc; ojalá puedas contactarte con el creador de la clase y pueda actualizarla ya que como te mencionaba antes, es importante para la conexión a bases de datos modernas.
Me gustó que se haya extendido este hilo de conversación ya que nos sirve para ir aprendiendo y viendo como evoluciona el lenguaje y las herramientas.
bueno, no me alargo más ya que más parece un testamento que un comentario :lol: ...
saludos cordiales,
Luis Vasquez.

Post Reply