Ver Mensaje Individual
  #7  
Antiguo 10-10-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Reputación: 28
jachguate Va por buen camino
Cita:
Empezado por Neftali
aunque no siempre un generador devolverá el mismo número que un Max (Select max(campo1) from tabla es los que se proponía inicialmente).
¡Claro! De hecho, sería una coincidencia que un generador devuelva el mismo valor que un select max() + 1), pero precisamente es por eso es mas fiable, pues si dos usuarios insertar un registro al mismo tiempo, obtendrán valores diferentes para su llave, mientras que con un select max, ambos obtendrán el mismo valor.

Cita:
Empezado por Neftali
El problema de los generadores es que si generas un número y luego deshaces el Insert o borras el registro, ese valor se pierde y al generar el siguiente tendrás un "hueco" en la numeración
Sin importar cómo hayas obtenido el valor de la llave primaria, si borras un registro, seguramente tendrás un hueco en la numeración...

Creo que es importante tener en cuenta, al modelar un sistema, que es una mala idea usar los números de documento fiscales o contables como llave primaria. Creo que se gana mucha independencia si usas una llave totalmente artificial y luego asignas los números de documento según corresponda. Desde este punto de vista, tener un hueco en el correlativo no tiene ninguna importancia.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita