Este tipo de restricciones permite asignar a través de diversos mecanismos seguridades adicionales a nivel de base de datos como:
- Tipo de Datos: Define los tipos de datos que se almacenan en la columna seleccionada.
- Reglas: Los valores que puede aceptar la columna
- Valores Predeterminados: Si no se registra algún valor en la columna se coloca automáticamente.
- Restricciones: Como el motor de base de datos exige integridad de datos.
- Desencadenadores: Define un código a ejecutarse automáticamente en la base de datos.
- Esquemas XML: Permite definir contenidos de documentos en formato XML, en fragmentos de una columna de datos xml.
Restricciones
Se definen como reglas las cuales permiten añadir algún tipo de integridad a la columna siendo esta mas especifica que las anteriormente mencionadas como :
PRIMARY KEY
Permite identificar una o varias columnas de una table que contiene una clave principal, ÚNICAMENTE SE ASIGNA LA PRIMARY KEY POR TABLA, contener un único valor en las columnas constituyentes, sin embargo estos no deben contener valores nulos en su interior.
PRIMARY DEFAULT
Este tipo de restricción permite establecer un valor en cada columna predeterminando el mismo cuando no se encuentra algún dato ingresado. Solo recibe restricciones DEFAULT, se aplica a través de instrucciones INSERT, puede establecer funciones designadas por el sistema.
CHECK
Este tipo de restricciones permite restringir valores que son insertados a través de los comandos INSERT, UPDATE, se puede definir varias restricciones CHECK por columna, se pueden referenciar las columnas de misma tabla, sin embargo no se puede contener subconsultas.
UNIQUE
Permite definir que los valores en las columnas se consideren unicos, se puede realizar en una o varias columnas, solo se permite un valor nulo.
FOREING KEY
Garantiza la integridad referencia entre columnas de una misma o de diferentes tablas, a una primary key para ello es necesario que el usuario tenga permisos References a una tabla.
INTEGRIDAD REFERENCIAL EN CASCADA
Se puede crear, cambiar, eliminar restricciones sin necesidad de volver a realizarlo en una nueva tabla, requiere que mantenga nombres significativos. Como recomendacion se establece eliminar restricciones Check y Foreing Key.
Nota
Los desencadenadores se encuentran deshabilitados para ello es necesario utilizar el siguiente comando.
Puede superar un limite de 32 niveles de anidamiento sin embargo es difícil controlar el orden al actualizar la tabla.
Bibliografía:
Este tipo de restricciones permite restringir valores que son insertados a través de los comandos INSERT, UPDATE, se puede definir varias restricciones CHECK por columna, se pueden referenciar las columnas de misma tabla, sin embargo no se puede contener subconsultas.
UNIQUE
Permite definir que los valores en las columnas se consideren unicos, se puede realizar en una o varias columnas, solo se permite un valor nulo.
FOREING KEY
Garantiza la integridad referencia entre columnas de una misma o de diferentes tablas, a una primary key para ello es necesario que el usuario tenga permisos References a una tabla.
INTEGRIDAD REFERENCIAL EN CASCADA
Se puede crear, cambiar, eliminar restricciones sin necesidad de volver a realizarlo en una nueva tabla, requiere que mantenga nombres significativos. Como recomendacion se establece eliminar restricciones Check y Foreing Key.
DESENCADENADORES
Son procedimientos los cuales se ejecutan cuando las instrucciones insert, update o delete, realizan modificaciones de una tabla. Se dividen en dos categorías.
- Los desencadenadores TRIGGER se ejecutan después de insert, update o delete.
- Los desencadenadores INSTEAD OF se ejecutan en vez de un insert, update o delete.
Nota
Los desencadenadores se encuentran deshabilitados para ello es necesario utilizar el siguiente comando.
Puede superar un limite de 32 niveles de anidamiento sin embargo es difícil controlar el orden al actualizar la tabla.
Bibliografía:
- TechNet(2008). Integridad de Datos. Recuperado el 6 de Junio del 2016 de https://technet.microsoft.com/es-es/library/ms184276(v=sql.105).aspx
- Microsoft(2015). Desencadenadores DDL. Recuperado el 13 de Junio del 2016 de https://msdn.microsoft.com/es-es/library/ms175941.aspx