Tecnología

Inicio

¿Qué es una restricción de SQL?

restricciones SQL son reglas que limitan los datos almacenados en las tablas. Puede crear limitaciones al crear nuevas tablas o alterar las tablas existentes. Los principales tipos de restricciones que usan los lenguajes SQL incluyen claves primarias y externas, único, de verificación y no nulo. Se crea limitaciones ya sea en estilo en línea, donde se especifica cada restricción en la misma línea que la declaración del campo al que se aplica, o en el estilo de salida de línea, donde se especifican todas las restricciones después de la declaración de campos.

Llaves

La restricción de clave principal identifica de forma única un registro en una tabla. Su campo o campos deben contener un valor que no sea nulo y cada valor debe ser único dentro de la tabla. Por ejemplo, una tabla de empleados puede utilizar números de la Seguridad Social como una clave principal ya que cada empleado tiene uno y son valores únicos para cada persona. La restricción de clave externa coincide con los valores de los campos clave de otras tablas, conectándolos entre sí. Por ejemplo, una tabla de productos puede tener un campo de número de producto como una clave principal, mientras que una tabla de pedidos puede tener un campo de número de producto como una clave externa que hace referencia a la clave principal en la tabla productos.

Único

La restricción única no permite múltiples registros de la tabla de tener los mismos valores. Cada restricción única puede aplicarse a uno o más campos. Por ejemplo, una tabla de empleados puede tener una restricción de sólo en un campo de identificación de empleado, mientras que otra tabla puede tener una restricción única en los campos de nombre y apellido. Esa tabla puede tener múltiples registros con el nombre "John", pero sólo un registro con el nombre completo "John Smith". Los campos con restricciones únicas difieren de los que tienen restricciones de clave principal en que estos campos pueden tener valores nulos. Los valores nulos de dos o más registros no se consideran iguales.

Comprobar

La restricción de comprobación tiene la mayor flexibilidad de todas las restricciones. Se le permite probar los datos para una determinada condición antes de la consulta se puede insertar el registro en la tabla. Por ejemplo, puede comprobar para asegurarse de que un registro de una tabla de productos que tiene un campo de precios con un valor mayor que cero, o comprobar para garantizar un registro de una tabla de revisión de la película tiene un valor de campo de clasificación entre uno y cuatro estrellas.

No nulo

La restricción no nulo sólo requiere que el campo al que se aplica la restricción tiene un valor que no sea nada. Si la consulta de inserción no contiene un valor para ese campo o si una consulta de actualización intenta eliminar un valor de un campo con esta restricción sin sustituirla, la consulta falla. A diferencia de la mayoría de otras restricciones, muchos lenguajes de SQL requiere la declaración de restricciones no-nulos estilo en línea usando solamente; de lo contrario, crear o alterar la tabla para añadir la restricción no nulo no funciona.