Cuando diseño bases de datos, generalmente uso llaves
subrogadas para identificar de manera única los registros e índices únicos para
definir como única la entidad (lógica del registro), sin embargo, hasta hace algún
tiempo venia empleando llaves subrogadas numéricas como identificador de los
registros y dejaba la carga a la base de datos de generarlos como por ejemplo:
Secuencias para Oracle, Identity para SQL Server o Seriales para PostgreSQL,
sin embargo, hace poco comencé a usar los GUID y estoy encantado con uso.
Algunas ventajas de uso:
- · No requiero Scripts complejos para trasladar información entre tablas.
- · Son casi que irrepetibles es 10^38.
- · Los puedo generar desde el aplicativo, adiós a las secuencias.
- · Facilita la migración del modelo entre Bases de Datos.
Los inconvenientes que le veo son:
- · Dificulta la búsqueda de un registro por consultas creadas a mano (depuración)
- · Genera un mayor consumo en Bases de Datos (No tan relevante hoy en día)
- · Puede disminuir el rendimiento de las consultas.
Ahora si te interesa llaves GUID y necesitas cargar datos,
por ejemplo: cargar un listado de datos desde un Excel.
Aquí te dejo la formula
para crear GUID desde Excel.
=MINUSC(CONCATENAR(DEC.A.HEX(ALEATORIO.ENTRE(0;4294967295);8);"-";EXTRAE(DEC.A.HEX(ALEATORIO.ENTRE(0;4294967295);8);1;4);"-";EXTRAE(DEC.A.HEX(ALEATORIO.ENTRE(0;4294967295);8);1;4);"-";EXTRAE(DEC.A.HEX(ALEATORIO.ENTRE(0;4294967295);8);1;4);"-";EXTRAE(DEC.A.HEX(ALEATORIO.ENTRE(0;4294967295);8);1;6);EXTRAE(DEC.A.HEX(ALEATORIO.ENTRE(0;4294967295);8);1;6)))
Para finalizar les recuerdo:
·
Cada quien tiene su forma de matar pulgas, así
que puede haber una gran cantidad de maneras de hacer el mismo trabajo.
·
Estos artículos son ejemplos; así que, si tienes
una mejor manera de hacerlo, o puedes colaborarme con alguna observación, tu
comentario es bienvenido.
·
No asumo ninguna responsabilidad por el uso de
lo expuesto.
·
Si los artículos te son de utilidad, no olvides
un “Me Gusta”, o dejar algún comentario.