Está en la página 1de 9

Ing.

Angel Calvillo

Una restricción que se podrá eliminar


• Característica adicional que tiene una cuando queramos sin tener que borrar la
columna o una combinación de columnas columna.
A cada restricción se le asigna un
• Se puede especificar en dos momentos
nombre que se utiliza para identificarla
durante: y para poder eliminarla cuando se
• CREATE TABLE : Aspecto Preventivo quiera.

• ALTER TABLE: Aspecto Correctivo


Juan Angel Calvillo Perez

• Clave principal, llave primaria (PK): identificar en forma única a cada


registro de la tabla.
• Hacer referencia a registros específicos de una tabla desde otra tabla.
• Claves candidatas
• Un solo atributo de la entidad: Clave simple.
• Por más de un atributo: Clave compuesta.
• La Clave foránea (FK)(también llamada externa o secundaria) es un
atributo que es clave primaria en otra entidad con la cual se
relaciona.
• Llave candidata: al atributo o conjunto de atributos que tienen la
propiedad de identificar unívocamente a una tupla dentro de la relación.
Ing. Angel Calvillo

3 TIPOS DE CONSTRAINT

Clave primaria (PK): Es un valor único que no se


puede repetir y que sirve para identificar cada fila de la CREATE TABLE Escritor
tabla, Sirve para generar las relaciones
(
ALTER TABLE Customer IdEscritor NUMERIC(6,0),
ADD PRIMARY KEY (IdEscritor); Nombre VARCHAR(10)
NOT NULL
CONSTRAINT PKEscritor
PRIMARY KEY (idEscritor)
);
Ing. Angel Calvillo

4 TABLE Empresa
CREATE • Clave externa (FK): Indica que una
(
IdEmpresa NUMERIC(8,0) NOT NULL , columna de una tabla hace referencia a
Nombre VARCHAR(255) NOT NULL, otra columna de otra tabla
Giro VARCHAR(100) NOT NULL,
FechaCreacion DATE NOT NULL,
IdPublica NUMERIC(5,0) NOT NULL ,
IdPrivada NUMERIC(5,0) NOT NULL ,
CONSTRAINT pkEmpresa
PRIMARY KEY (IdEmpresa),
ALTER TABLE Empresa
ADD CONSTRAINT fkEmp_Pri
CONSTRAINT fkEmp_Pri FOREIGN KEY (IdPrivada)
FOREIGN KEY(IdPrivada)
REFERENCES Privada (IdPrivada)
REFERENCES Privada (IdPrivada);
);
Ing. Angel Calvillo

5 CREATE TABLE GeneroLiterario


• La restricción UNIQUE (UQ) asegura
(
que todos los valores en una columna
IdGeneroLiterario NUMERIC(6,0) NOT NULL,
sean distintos, pero no son tan
Nombre VARCHAR(10) NOT NULL,
relevantes para ser PK.
Descripcion VARCHAR(10) NOT NULL,
Activo CHAR(1) NOT NULL,
ALTER TABLE GeneroLiterario PrincipalExponente VARCHAR(20) NULL,
ADD CONSTRAINT
uqGeneroLiterarioDescripcion Constraint UQGeneroLiterarioDescripción
UNIQUE (Descripcion); Unique (descripcion)

);
Ing. Angel Calvillo

6 CREATE TABLE GeneroLiterario


(
• La restricción CHECK asegura que todos
IdGeneroLiterario NUMERIC(6,0) NOT NULL
los valores en una columna cumplan ciertas
Nombre VARCHAR(10) NOT NULL,
condiciones.
Descripcion VARCHAR(10) NOT NULL,
Activo CHAR(1) NOT NULL,
PrincipalExponente VARCHAR(20) NULL,
ALTER TABLE GeneroLiterario
ADD CONSTRAINT ckGeneroLiterario Constraint ckGeneroLiterarioActivo
CHECK (activo IN ('A','I')); CHECK (activo IN ('A','I'))
);
Ing. Angel Calvillo

7 • La restricción DEFAULT se utiliza para


CREATE TABLE GeneroLiterario
( proporcionar un valor predeterminado para
IdGeneroLiterario NUMERIC(6,0) NOT NULL, una columna.
Nombre VARCHAR(10) NOT NULL,
Descripcion VARCHAR(10) NOT NULL,
Activo CHAR(1) Default 'A',
PrincipalExponente VARCHAR(20) NULL, ALTER TABLE GeneroLiterario
ALTER Activo SET DEFAULT ‘A';
Constraint ckGeneroLiterarioActivo
CHECK (activo IN ('A','I'))
);
Ing. Angel Calvillo

Una columna puede ser NULL. Si no


desea permitir un valor NULL en una
columna, querrá colocar una restricción
en esta columna especificando que NULL
no es ahora un valor permitido.
CREATE TABLE Escritor
(
IdEscritor NUMERIC(6,0),
Nombre VARCHAR(10) NOT NULL,
Paterno VARCHAR(10) NOT NULL,
Ing. Angel Calvillo

ALTER TABLE Persons
DROP CONSTRAINT UC_Person;

HABILITAR
ALTER TABLE GeneroLiterario ENABLE
CONSTRAINT uqGeneroLiterarioDescripcion;

DESHABILITAR
ALTER TABLE GeneroLiterario DISABLE
CONSTRAINT uqGeneroLiterarioDescripcion;

También podría gustarte