2009/8/13 Carlos Mendez <lucas1...@gmail.com> > Hola, gracias por responder, > > lo que sucede es que tengo que hacer una migracion desde una bd interbase a > postgresql, el anterior sistema usaba interbase que tiene informacion de mas > o menos 10 años desde el 2008 hacia atras y el nuevo sistema solo tiene > informacion de este año y ahora hay que migrar toda la informacion antigua a > la bd pgsql, migre primero las tablas de interbase a txt y despues use copy > y las pase a pgsql, ahora tengo las tablas de interbase en pgsql pero en > tablas separadas, ahora el problema es tener una sola tabla pero tratando de > no tener repetidos por eso preguntaba como puedo listar los alumnos que > estan en una tabla pero no en la otra basandome en los nombres. > > la base de datos es parecida a la de un colegio tiene alumnos, notas, > profesores, etc. > El jefe quiere ver el historial(notas) de un alumno *en un solo sistema*, > porque ahora si el alumno es de mas 1 año de antiguedad tiene que consultar > 2 sistemas, por eso pidio que toda la informacion se migre del anterior > sistema al nuevo, pero por supuesto los id son distintos, pero el jefe > quiere solo ver el historial completo en una solo sistema. > > Ya les dije el problema de fondo, como afronto esta situacion?, > Gracias por la ayuda, > saludos. > > > Ufff ta dificil lo tuyo :0) mira yo vengo saliendo de un proceso de migracion que hice de MySql / SqlServer a PG y me encontre con la desagradable sorpresa que una de las bases de datos no tenia claves ni integridad referencial (controlada via aplicacion) .. o sea una locura .. que hice : - Simplemente hubieron datos que se perdieron , o sea cree una estructura con datos "Anomalos" o sea : su procedencia (tabla ) y sus detalles . - Despues para solucionar dramas como el que tu tienes simplemente lo que hice fue crear una tabla con id nuevos identifique aquellos que estaban correctos y los ingrese a esta nueva tabla, obviamente salvoaguardando integridad, analizando el impacto dentro de las otras tablas donde estos id's generaban transacciones etc. etc ... - Use Kettle de Pentaho para todas mis operaciones....
En tu caso para los alumnos lo primero que haria: Crear una tabla nueva "Alumnos" - Ver donde esos alumnos generan transacciones. - Partir por Identificar los alumnos unicos y generar id para ellos. - Identificar los alumnos repetidos ( o sea si tienes 2 "javier chavez" , ver de acuerdo a tu analisis si es una o dos personas) - Generarles un id a estos casos especiales en tu tabla y en sus transacciones. - Es un trabajo tedioso pero es la unica manera que veo que una migracion quede relativamente decente , ahora si tus fuentes de datos tienen basura dificilmente vas a conseguir armar historiales y cosas... GIGO : Garbage In , Garbage Out :S ... Gratos saludos. JC -- Cumprimentos jchavez linux User #397972 on http://counter.li.org/ Mike Ditka <http://www.brainyquote.com/quotes/authors/m/mike_ditka.html> - "If God had wanted man to play soccer, he wouldn't have given us arms."