Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Aplica a: SQL Server 2016 (13.x) y versiones posteriores
Azure SQL Database
Azure SQL Managed Instance
Base de datos SQL en Microsoft Fabric
Puede modificar el lado de clave externa de una relación en SQL Server mediante SQL Server Management Studio o Transact-SQL. Modificar la clave externa de una tabla cambia qué columnas están relacionadas con las columnas de la tabla de clave primaria.
En este tema
Antes de empezar:
Para modificar una clave externa con:
Antes de empezar
Limitaciones y restricciones
La nueva columna de clave externa debe tener el mismo tipo de datos y el mismo tamaño que la columna de clave principal con la que está relacionada, con las siguientes excepciones:
Se puede asociar una columna de tipo char o sysname a una columna de tipo varchar .
Se puede asociar una columna de tipo binary a una columna de tipo varbinary .
Un tipo de alias puede estar relacionado con su tipo base.
Security
Permissions
Requiere el permiso ALTER en la tabla.
Uso de SQL Server Management Studio
Para modificar una clave externa
En el Explorador de objetos, expanda la tabla con la clave externa y luego expanda Claves.
Haga clic con el botón derecho en la clave externa que se va a modificar y seleccione Modificar.
En el cuadro de diálogo Relaciones de clave externa , puede realizar las siguientes modificaciones.
Relación seleccionada
Muestra las relaciones existentes. Seleccione una relación para mostrar sus propiedades en la cuadrícula situada a la derecha. Si la lista está vacía, no se han definido relaciones para la tabla.Add
Crea una nueva relación. Debe definir Especificación de tablas y columnas para que la relación sea válida.Delete
Elimina la relación seleccionada en la lista Relaciones seleccionadas . Para cancelar la adición de una relación, utilice este botón para eliminar la relación.Categoría general
Se expande para mostrar Comprobar datos existentes al crear o al habilitar de nuevo y Especificación de tablas y columnas.Comprobación de los datos existentes al crear o volver a habilitar
Verifica todos los datos existentes en la tabla, antes de que se creara o se volviera a habilitar la restricción, con respecto a la restricción.Categoría de especificaciones de tablas y columnas
Expanda para mostrar qué columnas de qué tablas actúan como clave foránea y clave primaria (o única) en la relación. Para editar o definir estos valores, haga clic en el botón de puntos suspensivos (...) situado a la derecha del campo de propiedad.Tabla base de clave externa
Muestra la tabla que contiene la columna que actúa como clave externa en la relación seleccionada.Columnas de clave externa
Muestra la columna que actúa como clave externa en la relación seleccionada.Tabla base de clave primaria/única
Muestra la tabla que contiene la columna que actúa como clave principal (o única) en la relación seleccionada.Columnas de clave primaria/única
Muestra la columna que actúa como clave principal (o única) en la relación seleccionada.Categoría de identidad
Se expande para mostrar los campos de propiedades de Nombre y Descripción.Name
Muestra el nombre de la relación. Cuando se crea una nueva relación, se le da un nombre predeterminado que se basa en la tabla de la ventana activa del Diseñador de tablas. Puede cambiar el nombre en cualquier momento.Description
Describe la relación. Para escribir una descripción más detallada, haga clic en Descripción y luego en los puntos suspensivos (...) que aparecen a la derecha del campo de propiedad. De este modo, obtendrá un área más grande en la que escribir el texto.Categoría Diseñador de tablas
Se expande para mostrar la información de Comprobar datos existentes al crear o al habilitar de nuevo y Exigir para replicación.Forzar para la replicación
Indica si se exigirá la restricción cuando un agente de replicación realice una inserción, actualización o eliminación en esta tabla.Exigir restricción de clave externa
Especifica si se pueden modificar los datos de las columnas de la relación y si estos cambios pueden invalidar la integridad de la relación de clave externa. Elija Sí si no desea permitir esos cambios y No si desea permitirlos.INSERT y UPDATE Categoría de especificaciones
Se expande para mostrar la información de Regla de eliminación y Regla de actualización de la relación.Eliminar regla
Especifica lo que sucede si un usuario intenta eliminar una fila con datos que están implicados en una relación de clave externa:Ninguna acción Un mensaje de error informa al usuario de que no se permite eliminar y se revierte la operación DELETE.
Cascada Elimina todas las filas que contienen los datos implicados en la relación de clave foránea. No especifique CASCADE si la tabla se va a incluir en una publicación de combinación que utiliza registros lógicos.
Establecer en Null Establece el valor en NULL si todas las columnas de clave externa de la tabla aceptan valores NULL.
Establecer predeterminado Establece el valor predeterminado definido para la columna cuando todas las columnas de clave externa de la tabla tienen definidos valores predeterminados.
Actualizar regla
Especifica lo que sucede si un usuario intenta actualizar una fila con datos que están implicados en una relación de clave externa:Sin acción Un mensaje de error indica al usuario que la actualización no está permitida y que UPDATE se revierte.
Cascada Actualiza todas las filas que contengan datos implicados en la relación de clave externa. No especifique CASCADE si la tabla se va a incluir en una publicación de combinación que utiliza registros lógicos.
Establecer en Null Establece el valor en NULL si todas las columnas de clave externa de la tabla aceptan valores NULL.
Establecer predeterminado Establece el valor predeterminado definido para la columna si todas las columnas de clave externa de la tabla tienen valores predeterminados definidos.
En el menú Archivo , haga clic en Guardartable name.
Uso de Transact-SQL
Para modificar una clave externa
Para modificar una restricción FOREIGN KEY mediante Transact-SQL, primero debe eliminar la restricción FOREIGN KEY existente y, a continuación, vuelva a crearla con la nueva definición. Para obtener más información, consulte Eliminar relaciones de clave externa y Crear relaciones de clave externa.