La integridad de datos es fundamental en SQL para garantizar que la información almacenada en la base de datos sea precisa y coherente. A continuación, se describen las restricciones más comunes utilizadas para mantener la integridad de datos.
NOT NULLLa restricción NOT NULL se utiliza para asegurar que una columna no contenga valores nulos. Por ejemplo, al crear una tabla usuarios donde el nombre y el email no pueden ser nulos:
CREATE TABLE usuarios (
id INT PRIMARY KEY,
nombre VARCHAR(100) NOT NULL,
email VARCHAR(100) NOT NULL
); UNIQUELa restricción UNIQUE se utiliza para garantizar que todos los valores en una columna sean únicos. Por ejemplo, si deseas que el email sea único en la tabla usuarios:
CREATE TABLE usuarios (
id INT PRIMARY KEY,
nombre VARCHAR(100),
email VARCHAR(100) UNIQUE
); DEFAULTLa restricción DEFAULT se utiliza para establecer un valor predeterminado para una columna cuando no se especifica uno. Por ejemplo, al crear una tabla productos donde el stock por defecto es 0:
CREATE TABLE productos (
id INT PRIMARY KEY,
nombre VARCHAR(100),
stock INT DEFAULT 0
); Claves PrimariasLas claves Claves Primarias son restricciones que identifican de manera única cada fila en una tabla. En el ejemplo anterior, la columna id es una clave primaria:
CREATE TABLE usuarios (
id INT PRIMARY KEY,
nombre VARCHAR(100)
); Claves ForáneasLas Claves Foráneas se utilizan para establecer una relación entre dos tablas. Por ejemplo, si tienes una tabla pedidos que se relaciona con usuarios, puedes definir usuario_id como clave foránea:
CREATE TABLE pedidos (
id INT PRIMARY KEY,
usuario_id INT,
FOREIGN KEY (usuario_id) REFERENCES usuarios(id)
); CHECKLa restricción CHECK se utiliza para limitar los valores que pueden ser insertados en una columna. Por ejemplo, puedes restringir la edad de los usuarios a que sea mayor de 0:
CREATE TABLE usuarios (
id INT PRIMARY KEY,
nombre VARCHAR(100),
edad INT CHECK (edad > 0)
); CONSTRAINTSLas restricciones (constraints) son reglas que se aplican a las columnas de una tabla para mantener la integridad de los datos. Puedes definir múltiples restricciones en una columna o en la tabla. Por ejemplo:
CREATE TABLE productos (
id INT PRIMARY KEY,
nombre VARCHAR(100),
precio DECIMAL CHECK (precio > 0) CONSTRAINT precio_unico UNIQUE
); Las restricciones son esenciales para mantener la integridad de datos en SQL, asegurando que la información almacenada sea válida y coherente. Utiliza NOT NULL, UNIQUE, DEFAULT, claves primarias y foráneas, y restricciones como CHECK y CONSTRAINTS para lograr un diseño de base de datos robusto.