Supongo que todos se topan con este problema de vez en cuando: tiene dos tablas que tienen claves primarias de autonumber que deben fusionarse. Hay muchas buenas razones por las que las claves primarias de autonumber se usan en favor de las claves generadas por aplicaciones, pero la fusión con otras tablas debe ser uno de los mayores inconvenientes.¿Cómo se combinan las tablas con las claves principales del autonumber?
Algunos problemas que surgen son la superposición de los identificadores y las claves externas no sincronizadas. Me gustaría escuchar su enfoque para abordar esto. Siempre me encuentro con problemas, así que tengo mucha curiosidad si alguien tiene algún tipo de solución general.
- EDITAR -
En respuesta a las respuestas que sugieren utilizar guids u otras teclas no numéricas, hay situaciones en las que de antemano que sólo parece una mejor idea de utilizar claves Autonuméricos (y usted Lamento esto más tarde), o estás asumiendo el control del proyecto de otra persona, o obtienes alguna base de datos heredada con la que tienes que trabajar. Así que realmente estoy buscando una solución donde ya no tenga control sobre el diseño de la base de datos.
La pregunta tenía más que ver con una forma genérica, no tanto dónde sabes lo que va a suceder de antemano (porque entonces podrías haber usado guids). – Carvellis
Parece una idea, sin embargo, para calcular NEW_ID = old_id * 2 para la primera tabla y NEW_ID = (old_id * 2) + 1 para la segunda tabla. Si hace esto para todas las tablas que participan todo va a coincidir de nuevo y se puede volver a habilitar las claves foráneas. – thomaspaulb