Importar desde .dbf

04/11/2006 - 00:10 por Agustin | Informe spam
Hola, estoy haciendo un modulo de importación de datos de otras aplicaciones
que estan en el antiguo dbase(clipper) como puedo convertir las cadenas de
texto OEM a ANSI, pues me salen simbolos 'raros'.

Gracias
Agustin

Preguntas similare

Leer las respuestas

#6 Agustin
05/11/2006 - 11:27 | Informe spam
La idea que tengo es poder ofrecer esta utilidad desde dentro de mi
aplicación.
Agustin

"Paco Ferre" escribió en el mensaje
news:
Hola,

No sé si tienes necesidad de importar cualquier DBF o un conjunto
reducido de ficheros, por ejemplo para una aplicación nueva que
sustituye a una anterior.

En el último caso (que me han tocado muchas importaciones gordas) es
más interesante usar las herramientas de importación de Access o SQL
Server para hacer el primer trabajo "sucio". Luego solo tienes que
desarrollar la importación a tu base de datos, hasta puedes crear
índices en la base de datos "sucia" para que todo vaya mucho más
rápido.

Por otro lado, pensaba que usando ADO.NET sobre el ODBC correspondiente
debería hacerte la "traducción" sin problema. Se supone que Access y
SQL Server usan lo mismo. Prueba a ver qué consiguen cuando le pides
que te importe un DBF.

Saludos,

Paco Ferre

Agustin ha escrito:

vale, ire investigando
Gracias
Agustin

"Alberto Poblacion [MVP]"
escribió en el mensaje news:
> "Agustin" wrote in message
> news:Ohahb9$$
>> Ok, pero no entiendo como lo hago desde una .dbf
>> tienes un ejemplo de importacion
>
> Pues no, no tengo ningún ejemplo. La verdad es que nunca he importado
> datos desde un dbf. Por lo que había entendido de la pregunta original,
> la
> primera parte de la importación, que sería "extraer el contenido del
> dbf",
> ya la tenías hecha. Y a continuación venía una segunda parte que era
> "sustituir el juego de caracteres", que entendí que era la que no
> conocías
> y que esa sí es la que sé hacer con System.Text.Encoding: Suponiendo que
> ya tengas en un array de bytes los datos a convertir, con
> System.Text.Encoding puedes interpretar esos bytes conforme con el juego
> de caracteres que sea necesario. Pero la primera fase, "sacar los bytes
> del dbf" no la he hecho nunca. Supongo que se podría hacer abriendo una
> conexión por OleDb, creando un OleDbDataReader que recorra los
> registros,
> y sacando los bytes de los campos con el método GetBytes del datareader.
> Pero nunca lo he probado.
>
>
Respuesta Responder a este mensaje
#7 Paco Ferre
06/11/2006 - 09:46 | Informe spam
Yap,

Entonces prueba con el Visual Studio, abres un proyecto en blanco y
creas una conexión (con la opción Conectar a Base de Datos) a un
directorio donde tengas algunos DBF.
Puedes entonces ver los datos en pantalla y empezar a probar diferentes
combinaciones y drivers para encontrar la cadena de conexión correcta.

Saludos,

Paco Ferre

Agustin wrote:
La idea que tengo es poder ofrecer esta utilidad desde dentro de mi
aplicación.
Agustin

"Paco Ferre" escribió en el mensaje
news:
Hola,

No sé si tienes necesidad de importar cualquier DBF o un conjunto
reducido de ficheros, por ejemplo para una aplicación nueva que
sustituye a una anterior.

En el último caso (que me han tocado muchas importaciones gordas) es
más interesante usar las herramientas de importación de Access o SQL
Server para hacer el primer trabajo "sucio". Luego solo tienes que
desarrollar la importación a tu base de datos, hasta puedes crear
índices en la base de datos "sucia" para que todo vaya mucho más
rápido.

Por otro lado, pensaba que usando ADO.NET sobre el ODBC correspondiente
debería hacerte la "traducción" sin problema. Se supone que Access y
SQL Server usan lo mismo. Prueba a ver qué consiguen cuando le pides
que te importe un DBF.

Saludos,

Paco Ferre

Agustin ha escrito:

> vale, ire investigando
> Gracias
> Agustin
>
> "Alberto Poblacion [MVP]"
> escribió en el mensaje news:
> > "Agustin" wrote in message
> > news:Ohahb9$$
> >> Ok, pero no entiendo como lo hago desde una .dbf
> >> tienes un ejemplo de importacion
> >
> > Pues no, no tengo ningún ejemplo. La verdad es que nunca he importado
> > datos desde un dbf. Por lo que había entendido de la pregunta original,
> > la
> > primera parte de la importación, que sería "extraer el contenido del
> > dbf",
> > ya la tenías hecha. Y a continuación venía una segunda parte que era
> > "sustituir el juego de caracteres", que entendí que era la que no
> > conocías
> > y que esa sí es la que sé hacer con System.Text.Encoding: Suponiendo que
> > ya tengas en un array de bytes los datos a convertir, con
> > System.Text.Encoding puedes interpretar esos bytes conforme con el juego
> > de caracteres que sea necesario. Pero la primera fase, "sacar los bytes
> > del dbf" no la he hecho nunca. Supongo que se podría hacer abriendo una
> > conexión por OleDb, creando un OleDbDataReader que recorra los
> > registros,
> > y sacando los bytes de los campos con el método GetBytes del datareader.
> > Pero nunca lo he probado.
> >
> >
Respuesta Responder a este mensaje
#8 Agustin
06/11/2006 - 14:47 | Informe spam
Es lo que estoy probando.
Agustin

"Paco Ferre" escribió en el mensaje
news:
Yap,

Entonces prueba con el Visual Studio, abres un proyecto en blanco y
creas una conexión (con la opción Conectar a Base de Datos) a un
directorio donde tengas algunos DBF.
Puedes entonces ver los datos en pantalla y empezar a probar diferentes
combinaciones y drivers para encontrar la cadena de conexión correcta.

Saludos,

Paco Ferre

Agustin wrote:
La idea que tengo es poder ofrecer esta utilidad desde dentro de mi
aplicación.
Agustin

"Paco Ferre" escribió en el mensaje
news:
Hola,

No sé si tienes necesidad de importar cualquier DBF o un conjunto
reducido de ficheros, por ejemplo para una aplicación nueva que
sustituye a una anterior.

En el último caso (que me han tocado muchas importaciones gordas) es
más interesante usar las herramientas de importación de Access o SQL
Server para hacer el primer trabajo "sucio". Luego solo tienes que
desarrollar la importación a tu base de datos, hasta puedes crear
índices en la base de datos "sucia" para que todo vaya mucho más
rápido.

Por otro lado, pensaba que usando ADO.NET sobre el ODBC correspondiente
debería hacerte la "traducción" sin problema. Se supone que Access y
SQL Server usan lo mismo. Prueba a ver qué consiguen cuando le pides
que te importe un DBF.

Saludos,

Paco Ferre

Agustin ha escrito:

> vale, ire investigando
> Gracias
> Agustin
>
> "Alberto Poblacion [MVP]"
>
> escribió en el mensaje news:
> > "Agustin" wrote in message
> > news:Ohahb9$$
> >> Ok, pero no entiendo como lo hago desde una .dbf
> >> tienes un ejemplo de importacion
> >
> > Pues no, no tengo ningún ejemplo. La verdad es que nunca he
> > importado
> > datos desde un dbf. Por lo que había entendido de la pregunta
> > original,
> > la
> > primera parte de la importación, que sería "extraer el contenido del
> > dbf",
> > ya la tenías hecha. Y a continuación venía una segunda parte que era
> > "sustituir el juego de caracteres", que entendí que era la que no
> > conocías
> > y que esa sí es la que sé hacer con System.Text.Encoding: Suponiendo
> > que
> > ya tengas en un array de bytes los datos a convertir, con
> > System.Text.Encoding puedes interpretar esos bytes conforme con el
> > juego
> > de caracteres que sea necesario. Pero la primera fase, "sacar los
> > bytes
> > del dbf" no la he hecho nunca. Supongo que se podría hacer abriendo
> > una
> > conexión por OleDb, creando un OleDbDataReader que recorra los
> > registros,
> > y sacando los bytes de los campos con el método GetBytes del
> > datareader.
> > Pero nunca lo he probado.
> >
> >
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida