Crear reglas en SQLServer

Una regla de SQLServer, es la entidad que nos permite validar datos de una columna en la inserción o actualización.

Por ejemplo, una regla podría indicar a nuestra columna Salario, que no se puedan meter cifras menores al salario mínimo interprofesional, por ejemplo en España, 641 euros.

La sintaxis sería la siguiente:

CREATE RULE NombreRegla

AS Condición

Donde Condición es de la misma forma que en un WHERE.

El ejemplo sería:

CREATE RULE SalarioMinimo AS @NuevoSalario > 641

Una vez, creada, hay que vincularla a la columna de la tabla que queramos que tenga esta restricción. Pueden ser muchas columnas de distintas tablas.

Utilizaremos para vincular la regla, el procedimiento almacenado de sistema sp_bindrule. Para desvincularla, necesitaremos sp_unbindrule.

La sintaxis es la siguiente:

Vincular Regla:

EXEC sp_bindrule Funcion_rule,'Tabla.Columna'

Desvincular Regla: (Los parámetros van al reves)

EXEC sp_unbindrule 'Tabla.Columna', Funcion_rule

Para borrar una regla DROP RULE nombre. No nos dejará borrar reglas que tengan vínculos.

 

Deja un comentario