![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
![]() Hola a todos en el foro y feliz navidad
Necesito apoyo en lo siguiente agradeciendo vuestra ayuda de antemano Una persona tiene dos pequeñas tiendas, con un programa de facturación en Delphi 7,pero ninguna de las tiendas tiene internet. El me dice que necesita un módulo que le permita crear los productos que necesite desde su oficina, la cual está lejos de sus tiendas y que una vez que haga eso pueda envíar los productos junto con un pendrive o un cd para que se actualicen las bases de datos en cada una. Tengo una idea de lo que voy a hacer a nivel de sistema, pero lo que no veo es como puedo hacer un backup de sql de una base de datos y que después en la tienda pueda descargarse la base de datos y actualizar solamente las tablas que están relacionadas con el inventario desde un medio removible como un pen drive o cd. Agradezco vuestro apoyo.
__________________
Oskar |
#2
|
||||
|
||||
Hola.
Yo creo que lo más sano es que exportes las tablas que te interesen en formato ascii para después poder leerlas desde otro punto y hacer las operaciones que necesites. Saludos
__________________
Be water my friend. |
#3
|
|||
|
|||
Hola Newtron,
Pero como podría hacer eso, por lo menos saber como empezar, además es preciso tener en cuenta que no quiero actualizar tablas completas sino anexar información a tablas que ya existen, es decir, cuando el pendrive llegue a la tienda el mismo solo debe actualizar la información que se creó en la oficina
__________________
Oskar |
#4
|
||||
|
||||
Metes el pendrive y le das a una opción "Exportar", que la debes crear tú, obviamente, con los datos que necesites traspasar.
Luego en el otro sitio, metes el pendrive y en el programa le das a una opción "Importar", que también, obviamente, debes crearla tú para extraer los datos del pendrive y almacenarlos en la BD.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
|||
|
|||
Hola Casimiro,
Obviamente el problema no es meter ni sacar el pendrive ni tampoco colocar la opción exportar ni importar, sino como pasar la información creada en la oficina a un formato o algo similar que después pueda ser anexada en las tablas que manejan los registros de productos y otras tablas relacionadas en la tienda, sin que eso signifique reemplazar una tabla, sino anexar la información que lleva el pendrive. Nunca había tenido la necesidad de hacer eso, por eso estoy preguntando, pero ten la absoluta seguridad de que sé como meter y sacar un pendrive de una computadora
__________________
Oskar |
#6
|
||||
|
||||
No he puesto en duda que sepas poner el pendrive en su sitio
![]() Lo de traspasar los datos tienes muchas formas de hacerlo, lo más simple es un fichero de texto, por ejemplo, si tienes que pasar los artículos, mediante un "sql" los exportas y luego los lees en el otro equipo: Es que tu pregunta es muy genérica, no queda claro exactamente qué es lo que quieres saber, ¿cómo exportar?, ¿cómo grabar los datos?, ¿cómo definir qué datos exportar?, ¿cómo elegir el formato de los mismos?, etc. Lo normal es un simple: "select codigo, nombre, precio, etc... from tbArticulos where .... lo que sea". Lo exportas a un fichero de texto: Después puedes comprimirlo en un .zip para que ocupe menos. Después vas al otro equipo y haces justo lo contrario: descomprimes el zip, y lees el fichero de texto, insertándolo en la base de datos. Debes especificar claramente qué es lo que quieres saber para que se te pueda ayudar.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#7
|
|||
|
|||
Perfecto Casimiro
Tienes razón, es que no sabía como abordar el tema, tal vez por eso fui un tanto genérico, pero lo más importante es que ahora si me has dado luz con el asunto de exportar en formato texto. Voy a investigar como pasar información entonces de sql a un archivo de texto y después como pasar información del archivo de texto a una tabla, siendo en este caso (me imagino) un archivo de texto por cada tabla a actualizar Espero tus comentarios Muchas gracias Casimiro Saludos
__________________
Oskar |
#8
|
||||
|
||||
Haz una búsqueda por los foros, se ha tratado varias veces y encontrarás ejemplos.
Y no olvides que lo primero de todo es tener muy claro, exactamente, los datos que necesitas traspasar. Y controlar que no se repitan y que solamente se traspasen los que se necesitan y nada más.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#9
|
||||
|
||||
Que BD usas? Si usas sqlite o firebird podrías literalmente copiar la BD y ya.
En el caso de sqlite, puedes hacer un attach http://www.sqlite.org/lang_attach.html y corres sql directamente. Si no tienes ni idea, te digo que sqlite es una excelente opción (es lo que uso en mis apps de iOS). Tambien con delphi, puedes cargar los datos en un clientdataset. Son exportables: http://docwiki.embarcadero.com/Libra...Set.SaveToFile. Eso es lo que hacia en el 2000. En el 2000, lo pillas? en serio, que tan "cheap bastard" es tu cliente que no pone internet? Aun una tarjeta de prepago? Y que tal si pone un red wifi "larga" si las oficinas estan a unos cuantos metros entre si? Esa es una cosa que hizo un cliente para tener su intranet - aunque esto puede implicar permisos-.
__________________
El malabarista. |
#10
|
|||
|
|||
Hola mamcx
La base datos que uso es sql server 2005 express, tanto en la ofc como en la tienda Con lo que me indicó Casimiro ya logró guardar una tabla en un txt a través de una instrucción llamada en cbp pero sólo lo pude hacer en ms-dos y lo que necesito es hacerlo directamente en delphi y que el archivo sea separado por comas y algo muy importante, la exportación al txt va a ser siempre de algunas registros de algunas tablas y no de tablas
__________________
Oskar |
#11
|
||||
|
||||
para no complicarte mucho la vida, por decir algo, en las jedi existe un componente CSV (texto separado por comas), que
.CopyFromDataset... .SaveToFile... .LoadFromFile ........ conectado al dataset correspondiente hace milagros, y ojo, funciona
__________________
online |
#12
|
||||
|
||||
Hola de nuevo.
A ver.... imagino que SQL Server tendrá la opción de exportar/importar desde ficheros de texto, lo único que tendrías que hacer es mantener un campo de la tabla que se marque cuando se exporten los registros de manera que podrías hacer un "EXPORT TABLE ..." (o con la sintaxis que use la base de datos) de los registros que no tengan esa marca y luego marcarlos como exportados, para importar te bastaría con hacer un "IMPORT TABLE..." directamente a la tabla donde los quieras añadir. Si quieres rizar el rizo ese campo de exportación podría ser un número que identificara el grupo de registros que has exportado por si se pierde el fichero poder regenerarlo de nuevo sin temor a duplicar datos. No sé si "mexplico". Saludos
__________________
Be water my friend. |
#13
|
|||
|
|||
Combat y Newton
Gracias por responder y me parecen interesantes ambas ideas y ya las voy a poner en práctica. Una vez que haga las pruebas pertinentes les confirmo como me fue con las opciones que me plantean Gracias
__________________
Oskar |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Ver Los Datos De Diferentes Tablas en una base De datos en access, Desde un DBGrid. | feliz-58 | Tablas planas | 2 | 24-01-2013 19:16:14 |
Gmail Drive y base de datos | sonjeux | Internet | 18 | 04-02-2011 16:05:59 |
Insertar Datos a un campo de la base de datos desde un DBEdit | saltamirano | Varios | 11 | 12-12-2007 17:29:35 |
Crear base de datos y cargar datos desde delphi | Albano | MySQL | 4 | 17-05-2007 20:01:18 |
Añadir datos desde una base de datos a un TListBox | proyecto | Conexión con bases de datos | 1 | 21-11-2006 07:01:19 |
![]() |
|