Cómo crear claves seguras en Microsoft SQL Server

Cómo crear claves seguras en Microsoft SQL Server

Cómo crear claves seguras en Microsoft SQL Server

VALORACIÓN DEL ARTÍCULO:
5/5


Uno de los conceptos más importantes en las bases de datos es la creación de relaciones entre las tablas de la base de datos. Estas relaciones proporcionan un mecanismo para enlazar datos almacenados en múltiples tablas y recuperarlos de manera eficiente. Para crear un enlace entre dos tablas, debe especificar una clave externa en una tabla que haga referencia a una columna de otra tabla.

Tablas y relaciones de la base de datos

Es posible que ya sepa que las bases de datos son simplemente una serie de tablas, similares a las que ya utiliza en un programa de hoja de cálculo, como Microsoft Excel. De hecho, incluso puede convertir una hoja de cálculo de Excel en una base de datos. Sin embargo, cuando las bases de datos difieren de las hojas de cálculo es cuando se trata de construir relaciones poderosas entre tablas.
Considere, por ejemplo, una base de datos utilizada por una empresa para hacer un seguimiento de la información de recursos humanos. Esa base de datos puede tener una tabla llamada Empleados que contiene la siguiente información para cada miembro del personal de la empresa:

  • ID de empleado
  • Nombre
  • Apellido
  • Teléfono de oficina
  • Teléfono de casa
  • PositionID

En este ejemplo, el ID de empleado es un número entero generado de forma unívoca que se asigna a cada empleado cuando se añade a la base de datos. El ID de posición es un código de función que se utiliza para hacer referencia a la posición del empleado en la empresa. En este esquema, un empleado puede tener un solo puesto, pero múltiples (o ningún) empleados pueden ocupar cada puesto. Por ejemplo, puede tener cientos de empleados con un puesto de «Cajero».
La base de datos también puede contener una tabla llamada Posiciones con la siguiente información adicional sobre cada posición:

  • PositionID
  • Título
  • Nivel de trabajo
  • SkillCategory
  • Ubicación

El campo ID de posición en esta tabla es similar al campo ID de empleado en la tabla Empleados – es un entero generado de forma única que se crea cuando se añade una posición a la base de datos.
Cuando vamos a sacar una lista de empleados de la base de datos, sería natural solicitar el nombre de cada persona y su título. Sin embargo, esta información se almacena en múltiples tablas de base de datos, por lo que sólo se puede recuperar utilizando una consulta JOIN que requiere una relación existente entre las tablas.
Cuando se observa la estructura de las tablas, el campo que define la relación es probablemente obvio: el campo ID de posición. Cada empleado puede tener sólo una posición y esa posición se identifica incluyendo el ID de posición de la entrada correspondiente de la tabla Posiciones. Además de ser la clave principal de la tabla Posiciones, en este ejemplo, el campo ID de posición también es una clave externa de la tabla Empleados a la tabla Posiciones. La base de datos puede utilizar este campo para correlacionar la información de múltiples tablas y asegurar que cualquier cambio o adición a la base de datos continúe haciendo cumplir la integridad referencial.

Una vez que haya identificado la clave foránea, puede seguir adelante y extraer la información deseada de la base de datos utilizando la siguiente consulta:

SELECCIONAR Nombre, Apellido, TítuloLos empleados internos se unen a los puestos de trabajo.PositionID = Positions.PositionID

Creación de claves extrañas en SQL Server

Técnicamente, no es necesario definir la relación explícitamente para poder realizar consultas como la anterior. Sin embargo, si define explícitamente la relación utilizando una restricción de clave externa, la base de datos podrá realizar algunas tareas de limpieza para usted:

  • Al añadir un nuevo registro a la tabla Empleados, la base de datos se asegurará de que el ID de posición que introduzca sea una clave primaria válida en la tabla Posiciones.
  • Si modifica un ID de posición en la tabla Posiciones, la base de datos puede realizar las actualizaciones necesarias en la tabla Empleados para mantener la coherencia.
  • La base de datos puede proteger contra el impacto de un borrado de una posición de la tabla de posiciones negándose a borrar una posición con las correspondientes entradas de empleado o realizando un borrado en cascada de todos los empleados relacionados.

Así es como crearía la clave foránea en SQL Server:

También puede crear una clave externa al crear una tabla añadiendo la cláusula:

Posiciones (PositionID)

FOREIGN KEY REFERENCES Positions(PositionID)

al final de la definición de columna para la columna de clave externa.

TAMBIÉN TE INTERESA

tarjetas gráficas ASUS y monitores ASUS

Con estas tarjetas gráficas ASUS y este monitor simplemente irás volando…

ASUS se ha convertido, por méritos propios, en una de las marcas más fiables en el mundo del gaming, lo cual también es compatible con equipos ideales para todo. Dos de sus componentes más destacados acaban de recibir actualización de modelos: hablamos de dos nuevas tarjetas gráficas ASUS y un monitor que, con poco que

ZTE-nubia-Neo-5G

ZTE nubia Neo 5G: el móvil gaming más futurista y accesbible

ZTE presenta el nuevo ZTE nubia Neo 5G en España, bajo el lema «Mejor Gaming para Todos». Este dispositivo, dirigido al sector gamer, destaca por su combinación de potencia y rendimiento a un precio asequible, ofreciendo un procesador UNISOC T820 de hasta 2,7 GHz, una pantalla de 120Hz, conectividad 5G y hasta 18GB de RAM,

Sora

Sora, lo último de OpenAI para generar vídeos por inteligencia artificial

La IA Generativa vuelve a dar un paso más impulsada por la empresa que ha protagonizado el gran boom de esta tecnología. OpenAI acaba de dar a conocer Sora, que se presenta como la nueva solución de esta entidad para generar vídeos siguiendo las instrucciones de los usuarios. A priori, uno puede pensar que los

la-IA-estará-detrás-de-todas-nuestras-compras-online

En poco tiempo, la IA estará detrás de todas nuestras compras online…

No sería descabellado pensar que la IA estuviera detrás de todas nuestras compras online en no mucho tiempo. El sector se mueve en estos momentos para proponer soluciones a los ecommerce y el cliente final termina por dejarse guiar por un sistema que va más allá de unas simples recomendaciones. Y es que las herramientas

precio-OPPO-A18

OPPO A18, no se puede pedir más a un móvil por ese precio…

OPPO acaba de lanzar al mercado el nuevo OPPO A18, un smartphone que podrá ser nuestro por una cifra irrisoria en el sector: 139 euros. No hay truco, ese el coste de un teléfono que tiene muchos argumentos para seducir a cualquiera. Evidentemente, no es un gama premium, pero si un gama media de lo