SQL - llave ed tabla y llave de negocio

   
Vista:

llave ed tabla y llave de negocio

Publicado por Alberto Valero (25 intervenciones) el 08/05/2009 18:15:26
Saludos,

Estube leyendo y observe que una tecnica utilizada es en una tabla utilzar un campo identity insert y un campo de negocio generado como llave primaria para este ser incluso el que relacione foreign keys para integridad y demas conceptos, pero para que diablos utilizar el identity? que ventaja o desventaje se tiene, en tablas de catalogos utilize identity por rapidez y por que no necesariamente tienen que llevar una secuencia, espero sus comentarios gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:llave ed tabla y llave de negocio

Publicado por pacopaz (143 intervenciones) el 08/05/2009 19:19:20
Por lo que entiendo de tu mensaje, esta es una técnica que es utilizada para categorizar el contenido de una tabla, más que para hacerla parte de una estrategia en todas tus tablas.
Como ejemplo, puedes pensar en bases de datos distribuidas, que alimenten a una central. Digamos que tienes 3 sucursales y cada una maneja su propia información, pero todas manejan a los mismos artículos. Las órdenes que ingresan a cada sucursal por compra, venta, traspasos, etc, llevan un identificador, que quizás sea una secuencia (es probable, aunque no es normativo), pero cada sucursal tiene su propio identificador, por lo que la llave compuesta de dos campos es importante para saber que identificador corresponde a cual sucursal, para que la central sepa donde se hizo el movimiento.
Otro ejemplo, que puede ser para una sola base de datos, es el paso de almacenes o procesos intermedios, en un sistema de administración de producción, donde la secuencia definiría el identificador de movimiento, mientras que el segundo identificador sería el almacen o proceso intermedio.
Por último, un ejemplo más puntual del uso de un identificador distinto al identity, es un sistema de facturación, donde el número de folio se tiene que forzar a ser continuo, así que este puede forzarse a ser una secuencia, mientras que el número de identificación no tenga por que serlo. Esto podría servir para tener una forma inmediata de saber con que frecuencia una inserción falla. Esto es, si el identity de la tabla comienza en 1, mientras que el folio comienza en 1001 y luego de 100 facturas el identity está en el 121, significa que el 20% de las veces no se ha logrado una inserción correcta y eso debería ser un foco de alarma para cualquier desarrollador, aunque no solo serviría para ello.
Y podría seguir con ejemplos, como el de incidencias de un trabajador en un sistema de recursos humanos, pero creo que he aclarado el punto hasta aqui.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar