border

Miembros:
Mensajes:
Temas:
Online:

Ultimo Miembro:

 
 


Retroceder   VB-MUNDO - Programacion Visual > Programacion - Lenguajes > Visual Basic 6.00
Registrarse FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
LinkBack Herramientas Desplegado
  #1 (permalink)  
Antiguo 27-05-2008, 20:31:56
Gran Participación en el Foro
 
Registrado: ago 2004
Ubicación: Buenos Aires - Argentina
Posts: 358
dares_ Valoración +2
Contactar con dares_ a través de MSN
Predeterminado Trabajar con 2 bases de datos simultanes

hola!
quiero saber si alguien tuvo la experiencia de trabajar con 2 bases de datos simultaneas de access con un proyecto en vb6 y/o la opinion que este planteo les merece?
estoy experimientando esta locura q en principio funciona pero a veces no estoy tan seguro o me entran las dudas si realmente esta funcionando correctamente o es posible que se pueda perder algo en la tranferencia de datos desde una base a la otra?
diego ares
Responder Con Cita
  #2 (permalink)  
Antiguo 27-05-2008, 22:36:12
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.404
J.M.Movilla Valoración +2
Predeterminado Re: Trabajar con 2 bases de datos simultanes

Yo personalmente trabajo sistemáticamente con, al menos, tres bases de datos: Una principal en que se asientan los datos fundamentales de la aplicación; una segunda para el Help, que por motivos especiales me interesa independizarla del fichero principal; y una tercera base de datos que tiene cada cliente en su propio disco duro, con sus parámetros personales y donde monto tablas temporales que me van a permitir que varios usuarios trabajen simultáneamente en una misma tarea, por lo que van a crear el mismo fichero temporal, y generaría conflicto si esa tabla estuviera en la base de datos común.

No veo ningún inconveniente en trabajar con mayor número de bases de datos simultáneamente, y no sé por qué a ti te inquieta eso. Posiblemente tengas algún motivo que te haga temer algún posible mal funcionamiento; conviene que indiques el por qué de esos temores.
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
  #3 (permalink)  
Antiguo 28-05-2008, 00:54:50
Gran Participación en el Foro
 
Registrado: ago 2004
Ubicación: Buenos Aires - Argentina
Posts: 358
dares_ Valoración +2
Contactar con dares_ a través de MSN
Predeterminado Re: Trabajar con 2 bases de datos simultanes

hola, no sabes como me alivia y q respiro me da tu respuesta, aun asi te explico para q uso 2 bases de datos, la base de datos A (Base.mdb) la uso para grabar todos los datos q genera el cliente (por ej cuando hace una factura), y en la base de datos B (Informes.mdb)
genero los informes, pasando registros desde Base.mdb a Informes.mdb (q tiene tablas q se sobrescriben todo el tiempo cada vez q genero un reporte), lo q hago es basicamente ejecutar una consulta sql desde Base.mdb a Informes.mdb de esta manera...
sSql = "INSERT INTO C:\Base\Informes\Informes.mdb.Reporte SELECT Datos.Campo1, Datos.Campo2, ... FROM Datos WHERE Datos.Campo1 BETWEEN 'A' AND 'Z' ORDER BY Datos.Campo1"
cnInformes.Execute sSql
Mi miedo o duda es q como estoy pasando registros desde Base.mdb a Informes.mdb no lo llegue a hacer correctamente, aunque ya lo probe con este mismo tipo de sentencia sql y parece q si funciona, lo q quiero es saber la opinion de alguien con mucha mas experiencia q yo para saber si no estoy haciendo cualquiera. GRACIAS
Diego Ares
Responder Con Cita
  #4 (permalink)  
Antiguo 28-05-2008, 03:22:38
Un Nuevo Amigo
 
Registrado: sep 2006
Posts: 22
J@rge Valoración +2
Predeterminado Re: Trabajar con 2 bases de datos simultanes

Sr Movilla, buenas noches (en este momento para mi es casi medianoche) estaba leyendo su forma de trabajar con al menos tres BD, me interesó mucho esa idea, me prodría Ud explicar un poco más acerca de su metodología de trabajo con las BD? porque según entiendo, en la BD principal tiene toda la información de la BD (tablas de clientes, proveedores, facturas de venta, compra, etc, etc) y cada usuario tiene otra BD en su equipo y que si no entiendo mal sería igual o similar a la principal. Entoces en algún momento la BD principal se actualiza con los datos de la BD de los equipos que tienen los usuarios? desde ya muchas gracias por su atención dispensada...
Responder Con Cita
  #5 (permalink)  
Antiguo 28-05-2008, 10:49:54
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.404
J.M.Movilla Valoración +2
Predeterminado Re: Trabajar con 2 bases de datos simultanes

A Diego Ares:

Lo que tú estás haciendo también podrías realizarlo con una sola base de datos, utilizando DOS TABLAS diferentes de esa DB: una real y otra temporal.

A J@rge:

No es exactamente eso que tú expones. La base de datos individual que tiene cada cliente en su disco duro me sirve para ir creando en ella tablas temporales que luego asocio a los VsReports que necesite cada uno. Ocasionalmente también he creado tablas en las que hago el tratamiento de los registros, que posteriormente actualizo en la base de datos principal.
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
  #6 (permalink)  
Antiguo 28-05-2008, 13:55:34
Gran Participación en el Foro
 
Registrado: ago 2004
Ubicación: Buenos Aires - Argentina
Posts: 358
dares_ Valoración +2
Contactar con dares_ a través de MSN
Predeterminado Re: Trabajar con 2 bases de datos simultanes

hola! te explico un poco mas, tengo 3 motivos para usar 2 bases de datos separando los reportes, y es q 1ro cuando quiero agregar un nuevo informe no tengo q pedierle al cliente q me mande por mail la base de datos, simplemente sobrescribo le mando la nueva base de datos de informes y listo, y la 2da razón es q como el sistema puede ser multiempresa, puede q tenga base.mdb y base2.mdb y al cambiar desde el sistema sin salir del mismo de una base de datos a otra, esto lo hace bien, pero al pedir un informe es como q el crystal reports no asumio el cambio de ruta de la base y no funcionan los informes con la nueva base de datos, relacionado con esto esta el 3er motivo y es q si tengo mas de 1 empresa en el mismo cliente, no duplico las tablas de informes al tenerlas todas en una unica base de datos...y el tema de crear bases de datos y luego eliminarlas en el momento es un poco complicado, ya q por codigo algunas cosas no se pueden definir bien, y es mucho mas simple tenerla ya creada y listo...q opinas? GRACIAS Diego Ares
Responder Con Cita
  #7 (permalink)  
Antiguo 29-05-2008, 01:59:13
Un Nuevo Amigo
 
Registrado: sep 2006
Posts: 22
J@rge Valoración +2
Predeterminado Re: Trabajar con 2 bases de datos simultanes

Muchas Gracias por su respuesta Sr Movilla, ahora entiendo la función de las BD secundarias...
Responder Con Cita
  #8 (permalink)  
Antiguo 29-05-2008, 09:18:24
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.404
J.M.Movilla Valoración +2
Predeterminado Re: Trabajar con 2 bases de datos simultanes

Piensa en la utilidad que puedes sacar de esta forma de trabajar ejecutando una SQL tan simple y potente como ésta:

Código:
SQL = "INSERT INTO TablaPrincipal SELECT NuevaTabla.* FROM NuevaTabla IN 'RutaCompleta\DBTemporal.mdb'"

ConexPral.Execute SQL
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
  #9 (permalink)  
Antiguo 29-05-2008, 13:53:07
Gran Participación en el Foro
 
Registrado: ago 2004
Ubicación: Buenos Aires - Argentina
Posts: 358
dares_ Valoración +2
Contactar con dares_ a través de MSN
Predeterminado Re: Trabajar con 2 bases de datos simultanes

hola! a ver si entendi, o me puedes explicar un poco mas en detalles las diferencias entre lo que yo hice y lo que vos me respondiste, y si es que funciona correctamente de la 2 formas o cual es mas convieniente utilizar?
A simple vista la ruta completa q se aclara es siempre la de la base destino, pero la instruccion sql se ejecuta en tu caso desde la coneccion destino (tambien), y en mi caso desde la coneccion origen (al reves), puede q esto haga q funcione mejor?, la sintaxis difiere un poco pero supongo q es solo cuestion de cambiar el INSERT INTO, el FROM y agregar el IN y listo! q opinas? o q me recomiendas q haga? GRACIAS Diego Ares

lo q yo hice fue:

sSql = "INSERT INTO C:\Base\Informes\Informes.mdb.Reporte SELECT Datos.* FROM Datos "
cnBase.Execute sSql

lo q vos me propones es:

sSql = "INSERT INTO Reporte SELECT Datos.* FROM Datos IN C:\Base\Informes\Informes.mdb"
cnInformes.Execute sSql
Responder Con Cita
  #10 (permalink)  
Antiguo 29-05-2008, 23:22:04
Avatar de J.M.Movilla
Administrator
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 5.404
J.M.Movilla Valoración +2
Predeterminado Re: Trabajar con 2 bases de datos simultanes

No veo claro qué diferencia existe entre tu fórmula y la mía. Creo que en esencia viene a ser igual el decir copia en esta base lo que tengo en la otra, que lo que tengo en la esta base lo copias en la otra. Todo dependerá de en cuál de las dos conexiones ejecutas la SQL...
__________________
José María Movilla Cuadrado
______________________

Visual Basic Videos Programacion Foro Programacion
Tutoriales Programacion Trucos Programacion Codigos Programacion
Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado



La franja horaria es GMT. Ahora son las 22:28:58.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
A vBSkinworks Design

Alojado en el servicio Premium de Masquewebs | Diseño mejorado por MasqueWebs

right