¿Qué es una clave primaria?
Una clave primaria es una entrada en una base de datos que es exclusiva de un único registro. Esta clave generalmente se deriva de una de dos maneras: un código de identificación único desde fuera de la base de datos o un número generado desde dentro de la base de datos. Cuando la base de datos contendrá información que siempre es exclusiva de la entrada, como un número de seguro social o un número de identificación de parte, entonces esos se usan típicamente como clave principal. Cuando los datos no tendrán dicho identificador, la base de datos a menudo creará números basados en sus sistemas internos para dar a cada registro un código único.
Hay tres restricciones principales en una clave primaria: existencia, unicidad e inmutabilidad. Debe existir una clave en el momento en que se realiza el registro; no se puede agregar más tarde. Cada clave tiene que ser completamente diferente de cualquier otra clave. Esto significa que los identificadores comunes, como el nombre o la fecha de nacimiento, no se pueden usar porque es posible que dos personas nazcan el mismo día con el mismo nombre. Por último, una clave principal nunca se puede modificar una vez creada.
Dado que una base de datos puede tener potencialmente un número infinito de entradas, una clave primaria también debe ser infinita. Para asegurarse de que una base de datos nunca se quede sin claves, la mayoría de los registros utilizan un código numérico para la clave. Dado que los números siempre pueden aumentar y las computadoras pueden simplemente agregar ceros de posición a las entradas más antiguas, un sistema nunca se quedará sin teclas. A veces, estos números se basan en información no única, pero se agrega un identificador único para asegurarse de que la clave sea viable.
Las bases de datos utilizarán una clave primaria como una forma de organizar los datos. Como la clave nunca se repite, esa información permitirá que la base de datos mantenga cada registro separado del resto. Cada pieza de información en un registro se conecta de nuevo a la clave; de esa manera, no importa lo que le pase al sistema, la base de datos puede reconstruir los registros a partir de información suelta.
La asignación de una clave primaria significativa a menudo se considera una mejor práctica que la generación automática de un valor. Esto le dará al registro un identificador que funciona como una clave y proporciona datos. En bases de datos pequeñas, esta distinción rara vez es necesaria, pero en sistemas grandes, el espacio extra utilizado por una clave generada puede resultar en una gran hinchazón de la base de datos. Esto ralentizará el sistema y hará que la base de datos requiera mucho más espacio de almacenamiento.