Restricciones de Integridad en Postgresql

Download as
 PPT
Presentation Description 

Se muestran algunas restricciones de integridad y la evaluación a las  More

Happy Thanksgiving
What's up on authorSTREAM?
Views: 1435
Like it  ( Likes) Dislike it  ( Dislikes)
Added: April 20, 2008 This Presentation is Public 
Presentation Category : Science & Technology All Rights Reserved
Presentation Transcript

BENEMƉRITA UNIVERSIDAD AUTƓNOMA DE PUEBLAFacultad de Ciencias de la ComputaciónTRATAMIENTO DE RESTRICCIONES DE INTEGRIDAD PARA OORDB. CASO DE ESTUDIO: POSTGRESQL.: BENEMƉRITA UNIVERSIDAD AUTƓNOMA DE PUEBLA Facultad de Ciencias de la Computación TRATAMIENTO DE RESTRICCIONES DE INTEGRIDAD PARA OORDB. CASO DE ESTUDIO: POSTGRESQL. Presenta JosĆ© Javier JuĆ”rez Caballero Asesor Lic. MarĆ­a del RocĆ­o Boone Rojas Coasesor Ing. Oscar Eduardo PĆ©rez Carrasco FCC - BUAP POSTGRESQL


Contenido: Contenido


Objetivo general y especƭficos: Documentar y experimentar las facilidades que ofrece POSTGRESQL para el manejo de OORDB. Desarrollar e implantar los mƩtodos necesarios para ofrecer un soporte para el componente de integridad de POSTGRESQL para OORDB. Objetivo general y especƭficos Identificar e implantar los mecanismos que ofrece POSTGRESQL para el tratamiento de restricciones de integridad en OORDB.


Integridad: Integridad Consistencia Calidad Seguridad


Restricciones de integridad: Restricciones de integridad


Restricciones de integridad elementales: Restricciones de integridad elementales


Sistemas de bases de datos relacionales: Sistemas de bases de datos relacionales Los RDBMS se fundamentan en el uso de relaciones. Estas relaciones podrían considerarse en forma lógica como conjuntos de datos llamados tuplas.


Sistemas de bases de datos orientadas a objetos: Sistemas de bases de datos orientadas a objetos Los Sistemas de bases de datos orientados a objetos tienen sus orígenes en los lenguajes de programación orientados a objetos. Un objeto puede considerarse como una especie de cÔpsula dividida en tres partes: Relaciones. Propiedades. Métodos.


Sistemas de bases de datos relacionales orientados a objetos: Sistemas de bases de datos relacionales orientados a objetos


PostgreSQL: PostgreSQL Michael Stonebraker


Restricciones de integridad en PostgreSQL: Restricciones de integridad en PostgreSQL CREATE TABLE vehiculo ( matricula varchar(10) NOT NULL, num_bastidor varchar(50) NOT NULL, fabricante varchar(20) NOT NULL, modelo varchar(20) NOT NULL, fecha_adq date NOT NULL, color varchar(10) NOT NULL, key_estado int4 NOT NULL, CONSTRAINT "Matricula" PRIMARY KEY (matricula), CONSTRAINT key_estado FOREIGN KEY (key_estado) REFERENCES estado (key_estados) MATCH SIMPLE ON UPDATE CASCADE ON DELETE CASCADE, CONSTRAINT bastidor UNIQUE (num_bastidor) )


Restricciones de integridad en PostgreSQL: Restricciones de integridad en PostgreSQL CREATE TABLE email ( key_email int4 NOT NULL DEFAULT nextval('email_key_email_seq'::regclass), email varchar(20), clave_are varchar(5) NOT NULL, CONSTRAINT key_email PRIMARY KEY (key_email), CONSTRAINT clave_are FOREIGN KEY (clave_are) REFERENCES arrendatario (clave) MATCH SIMPLE ON UPDATE RESTRICT ON DELETE RESTRICT, CONSTRAINT email_email_key UNIQUE (email) ) WITHOUT OIDS; ALTER TABLE email OWNER TO postgres;


Integridad transaccional: Integridad transaccional Transacción Transacción Transacción


Base de datos experimental: Base de datos experimental


DiseƱo de la base de datos: DiseƱo de la base de datos


Marco de evaluación propuesto: Marco de evaluación propuesto SI SI SI SI SI SI SI SI SI No permite valores nulos en un campo de llave primaria. No permite valores nulos en alguno de los campos que componen la llave primaria Realiza correctamente la verificación de unicidad No permite valores repetidos en el conjunto que forman la llave primaria. Cuando se actualiza el valor de la llave primaria, el valor no debe ser nulo. Cuando se actualiza el valor de la llave primaria, el valor no debe existir en la columna. Cuando se actualiza el valor de la llave primaria, no se permiten valores nulos en alguno de los campos que componen la llave primaria Cuando se actualiza el valor de la llave primaria, no se permiten valores repetidos en el conjunto que forman la llave primaria.


Marco de evaluación propuesto: Marco de evaluación propuesto SI Se define la llave forÔnea mediante un nombre específico, el cual, no debe existir. SI SI SI SI SI SI SI SI Se deben crear tuplas en donde el campo de llave primaria exista en la relación referida Se requiere integridad referencial. Siempre que no exista restricción que lo impida. Se requiere integridad referencial. Siempre que no exista restricción que lo impida. No se recomienda poner valores nulos. Se debe insertar una regla de validación en el diseño de una relación.


Marco de evaluación propuesto: Marco de evaluación propuesto SI SI SI SI SI Se debe especificar el atributo como unique. Se debe especificar el valor default en el diseño de la tabla. Se pueden crear tipos definidos por el usuario (dominio) para hacer referencia a algún tipo. Se debe crear primero una función trigger y posteriormente el disparador. Si la aplicación requiere de la aparición de un mensaje de error, es preferible utilizar un trigger.


PgAdmin III: PgAdmin III


Ejemplos : Ejemplos Pruebas en PostgreSQL Not null Llave forƔnea Check


Disparadores (triggers): Disparadores (triggers) -- Trigger CREATE TRIGGER actualizar_renta BEFORE UPDATE ON "Renta" FOR EACH ROW EXECUTE PROCEDURE renta_tri(); COMMENT ON TRIGGER actualizar_renta ON "Renta" IS 'antes de actualizar guarda en el catalogo';


Reglas de PostgreSQL: Reglas de PostgreSQL


Conclusiones: Conclusiones


Restricciones de integridad: Restricciones de integridad


Principales restricciones de integridad.: Principales restricciones de integridad.


Restricciones de integridad estƔticas: Restricciones de integridad estƔticas


Disparadores: Disparadores


Concentrado global: Concentrado global


Pruebas: Pruebas