IamOrion
Beta
Verificación en dos pasos activada
Verificado por Whatsapp
Verificado por Binance
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Esta idea peca de ingenuidad, los triggers son eventos que se realizan sobre la propia base de datos, y en este caso necesitas interactuar con otra base de datos.Puedes hacer lo siguiente a tu codigo implementarle los "trigger" para que cada vez que se actualice alguna tabla o ocurra algún evento este te sirva para poder actualizar ese evento en la otra bd
Algo hecho a medida no tiene que ser "rudimentario", el resultado depende de las capacidades del programador.Te recomendaría que buscaras herramientas para replicación de bases de datos como SymmetricDS, en lugar de crear uno propio.
Hay varias soluciones open source y de pago.
Si no, y quieres hacer todo de forma manual y rudimentaria, tendrías que analizar cada tabla y validar muy bien para validar que no exista ya ese registro con columnas clave (que te permitan identificar de forma única ese registro, no llaves primarias o foráneas) antes de insertarlo (SELECT -> INSERT).
Aunque eso evidentemente es poco eficiente, es menos probable que tengas problema de registros duplicados, esperando que por lo menos tengan alguna constraint UNIQUE.
Desde luego, mencioné rudimentario por el código que muestra en su captura de pantalla.Algo hecho a medida no tiene que ser "rudimentario", el resultado depende de las capacidades del programador.
En este caso lamentablemente estamos ante alguien cuyos conocimientos son limitados, eso es evidente cuando menciona que "hay tablas que no poseen id" y es que si se trata de "tablas puente", que son tablas que establecen relaciones entre tablas -no quiero complicar más las cosas pero es necesario decir que estas tablas gestionan relaciones 1 a 1, 1 a muchos, muchos a muchos- son tablas que no contienen IDs pues su labor no es almacenar datos sino vínculos.
Tengo varios años trabajando haciendo aplicaciones profesionales para internet -habiendo comenzado en el mundo de la informática haciendo sistemas de gestión de bases de datos- y juro que apenas entiendo lo que quiere decir el usuario webcoder!!! 🤔🤔🤔Los updates no lo actualizas?. Segun lo que estas haciendo no tenes muchas opciones o forzas a que tengan un id unico o bien determinas una "unique key" en la tabla con la que puedas detectar que registro es nuevo sumando varias columnas.
Otra opcion es como dicen un trigger, entonces en cada tabla a sincronizar pones un trigger que inserte en una tabla auxiliar y que la sincronizacion tome el registro desde ahi, lo bueno de este metodo que no solamente te cubre el insert sino tambien el delete y el update, la tabla auxiliar que sea identica a la tabla original con un indicador de operacion por si es insert, update o delete.
Si queres hacer algo mas dinamico y vas a tener que trabajar bastante mas. No me parece una tarea para un principiante pero bueno, exitos.
Tengo varios años trabajando haciendo aplicaciones profesionales para internet -habiendo comenzado en el mundo de la informática haciendo sistemas de gestión de bases de datos- y juro que apenas entiendo lo que quiere decir el usuario webcoder!!! 🤔🤔🤔
Puedes poner un trigger para meter el evento en una cola de mensajería y en el otro lado vas consumiendo los mensajes, con Kafka por ejemploEsta idea peca de ingenuidad, los triggers son eventos que se realizan sobre la propia base de datos, y en este caso necesitas interactuar con otra base de datos.
Puedes poner un trigger para meter el evento en una cola de mensajería y en el otro lado vas consumiendo los mensajes, con Kafka por ejemplo
Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?
Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?