Deshabilitar restricciones CHECK para la replicación
Puede deshabilitar las restricciones CHECK en SQL Server 2012 mediante SQL Server Management Studio o Transact-SQL. También puede deshabilitar explícitamente las restricciones CHECK para la replicación, lo que puede resultar útil si se publican datos de una versión anterior de SQL Server.
[!NOTA]
Si una tabla se publica mediante replicación, se deshabilitan automáticamente las restricciones CHECK para las operaciones realizadas por los agentes de replicación. Cuando un agente de replicación realiza una inserción, actualización o eliminación en un suscriptor, no se comprueba la restricción. En cambio, sí se comprueba cuando lo hace un usuario. La restricción se deshabilitará para el agente de replicación porque ya se comprobó en el publicador cuando se insertaron, actualizaron o eliminaron los datos originalmente. Para obtener más información, vea Especificar las opciones del esquema.
En este tema
Antes de empezar:
Seguridad
Para deshabilitar una restricción CHECK para la replicación, usando:
SQL Server Management Studio
Transact-SQL
Antes de empezar
Seguridad
Permisos
Requiere el permiso ALTER en la tabla.
[Top]
Usar SQL Server Management Studio
Para deshabilitar una restricción CHECK para la replicación
En el Explorador de objetos, expanda la tabla con la restricción CHECK que desee modificar y, a continuación, expanda la carpeta Restricciones.
Haga clic con el botón secundario en la restricción CHECK que desee modificar y, a continuación, haga clic en Modificar.
En el cuadro de diálogo Restricciones CHECK, bajo Diseñador de tablas, seleccione el valor No para Exigir para replicación.
Haga clic en Cerrar.
[Top]
Usar Transact-SQL
Para deshabilitar una restricción CHECK para la replicación
En el Explorador de objetos, conéctese a una instancia del Motor de base de datos.
En la barra Estándar, haga clic en Nueva consulta.
Copie y pegue el ejemplo siguiente en la ventana de consulta y haga clic en Ejecutar. En el ejemplo se crea una tabla con una columna IDENTITY y una restricción CHECK. Después, se quita la restricción y se vuelve a crear especificando la cláusula NOT FOR REPLICATION.
USE AdventureWorks2012; GO CREATE TABLE dbo.doc_exd (column_a int IDENTITY (1,1) CONSTRAINT exd_check CHECK (column_a > 1)) ALTER TABLE dbo.doc_exd DROP CONSTRAINT exd_check; GO ALTER TABLE dbo.doc_exd ADD CONSTRAINT exd_check CHECK NOT FOR REPLICATION (column_a > 1);
Para obtener más información, vea ALTER TABLE (Transact-SQL).
[Top]