Teclas básicas que facilitan a xestión de bases de datos

As claves de bases de datos son a forma máis sinxela de crear unha base de datos relacional eficiente

Como xa sabe, as bases de datos usan táboas para organizar información. (Se non ten unha familiaridade básica cos conceptos da base de datos, lea Que é unha base de datos? ) Cada táboa consiste nunha serie de filas, cada unha delas corresponde a un único rexistro de base de datos. Entón, como as bases de datos manteñen todos estes rexistros directamente? É mediante o uso de teclas.

Teclas primarias

O primeiro tipo de clave que imos discutir é a clave principal . Toda táboa de base de datos debe ter unha ou máis columnas designadas como a chave primaria . O valor que ten esta chave debe ser exclusivo para cada rexistro da base de datos.

Por exemplo, supoña que temos unha táboa chamada Empleados que contén información de persoal para cada empregado da nosa empresa. Necesitamos seleccionar unha clave primaria adecuada que identificaría de forma exclusiva cada empregado. O primeiro pensamento podería ser usar o nome do empregado. Isto non funcionaría moi ben porque é concebible que contrate dous empregados co mesmo nome. Unha opción mellor pode ser empregar un número exclusivo de ID de empregado que lle atribúa a cada empregado cando se contraten. Algunhas organizacións optan por usar os números de seguridade social (ou identificadores de goberno similares) para esta tarefa porque cada empregado xa ten un e está garantido para ser único. Non obstante, o uso dos números da Seguridade Social para este fin é altamente controvertido debido a problemas de privacidade. (Se traballas para unha organización gobernamental, o uso dun número de seguridade social pode ata ser ilegal segundo a Lei de privacidade de 1974.) Por este motivo, a maioría das organizacións cambiaron o uso de identificadores únicos (ID de empregado, ID de estudante, etc. .) que non compartan estas cuestións de privacidade.

Unha vez que decida unha chave primaria e configure a base de datos, o sistema de xestión da base de datos fará valer a unicidade da clave.

Se tentas inserir un rexistro nunha táboa cunha chave primaria que duplica un rexistro existente, a inserción fallará.

A maioría das bases de datos tamén son capaces de xerar as súas propias teclas primarias. Microsoft Access, por exemplo, pode configurarse para usar o tipo de datos AutoNumber para asignar unha identificación única a cada rexistro da táboa. Aínda que é efectivo, esta é unha mala práctica de deseño porque lle deixa un valor sen sentido en cada rexistro da táboa. Por que non usar ese espazo para almacenar algo útil?

Teclas estranxeiras

O outro tipo é a chave estranxeira , que se usa para crear relacións entre táboas. Existen relacións naturais entre táboas na maioría das estruturas da base de datos. Volvendo á nosa base de datos de funcionarios, imaxina que queriamos engadir unha táboa que contén información departamental á base de datos. Esta nova táboa pode chamarse Departamentos e tería unha gran cantidade de información sobre o departamento en xeral. Tamén queremos incluír información sobre os empregados do departamento, pero sería redundante ter a mesma información en dúas táboas (Empregados e Departamentos). Pola contra, podemos crear unha relación entre as dúas táboas.

Supoñamos que a táboa de departamentos usa a columna Nome do departamento como a clave principal. Para crear unha relación entre as dúas táboas, engadimos unha nova columna á táboa Empregados chamada Departamento. A continuación, enche o nome do departamento ao que pertence cada empregado. Tamén informamos ao sistema de xestión de bases de datos que a columna do Departamento na Mesa de empregados é unha chave estranxeira que fai referencia á táboa de departamentos.

A base de datos fará cumprir a integridade referencial asegurando que todos os valores da columna de departamentos da táboa empregados teñan entradas correspondentes na táboa Departamentos.

Teña en conta que non hai restricción unicidade para unha chave estranxeira. Podemos (e moi probablemente) ter máis dun empregado que pertence a un único departamento. Do mesmo xeito, non hai esixencia de que unha entrada na táboa Departamentos teña a entrada correspondente na táboa Empregados. É posible que tivésemos un departamento sen empregados.

Para obter máis información sobre este tema, lea Crear chaves foráneas .