Implementación de la integridad de datos

Slides:



Advertisements
Presentaciones similares
integridad referencial
Advertisements

VISTAS (VIEWS) DEFINICIÓN Y OBJETIVO DE LAS VISTAS.
Rocío Contreras Águila Primer Semestre 2010
Implementación de procedimientos almacenados
Rocio Contreras Aguila Primer Semestre Para poder ejecutar esto SQL Server nos permite definir datos y nos entrega herramientas para poder exigir.
LENGUAJE ESTRUCTURADO DE CONSULTA “SQL”
Implementación de funciones definidas por el usuario
Implementación de procedimientos almacenados. Introducción a los procedimientos almacenados Creación, ejecución, modificación y eliminación de procedimientos.
Implementación de vistas
Administración de transacciones y bloqueos
Modificación de datos.
Introducción a Transact-SQL
Creación y mantenimiento de índices
Creación y administración de bases de datos
Administración de archivos de bases de datos
Copia de seguridad de bases de datos
Creación de tipos de datos y tablas
Maestría en Bioinformática Bases de Datos y Sistemas de Información SQL: DML Ing. Alfonso Vicente, PMP
Unidad 3 Lenguaje SQL Contenidos Que es SQL ? Estructura de SQL
Lenguaje Estructurado de Consultas (Structured Query Language – SQL)
MySQL M.C. Pedro Bello López.
Restricciones de Integridad en ORACLE
Lenguaje SQL (Structured Query Language)
SQL Lenguaje de consulta estructurado
1 BD Activas: Motivación zLos SGBD convencionales son “pasivos”. Sólo ejecutan preguntas o transacciones realizadas por los usuarios o por los programas.
Bases de Datos Relacionales
Integridad Referencial 1. Integridad referencial 2.
UNITA - IBARRA TRIGGERS
tipo de datos uniqueidentifier
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
Universidad del Cauca – FIET – Departamento de Sistemas CAPITULO 11 Creando Vistas.
1 Microcomputación II Unidad II Administración de datos con MS-SQL Server y Visual Basic Introducción a Transact – SQL: Select, Delete, Update. Tema:
CAPITULO 10 Manejando Restricciones
SQL: DDL Francisco Moreno & Carlos Mario Zapata. SQL:DDL DDL: Lenguaje de Definición de Datos Permite crear objetos en la Base de Datos Tipos de Objetos:
Relacionando tablas. Restricción FOREIGN KEY.. Constraint Foreign key Genera una restricción a partir de la relación de dos tablas. En la figura siguiente.
ESCUELA TECNOLÓGICA INSTITUTO TÉCNICO CENTRAL Ing. Johanna Vargas Esp. Gerencia de proyectos.
Vista Externa de Una Base de Datos John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
SQL: Lenguaje de Interrogación Estructurado. Vistas Declaración de vista CREATE VIEW ( ) AS SELECT... Semántica Tabla virtual cuyo contenido es el resultado.
Fundamentos de bases de datos
Structured Query Language (Lenguaje Estructurado de Consultas)
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
SQL: DDL Francisco Moreno. SQL: DDL DDL: Lenguaje de Definición de Datos Permite crear objetos en la BD Tipos de objetos: - Tablas: corresponden a las.
Restricciones de Integridad
Instrucciones para crear tablas My SQL. A nivel teórico, existen dos lenguajes para el manejo de bases de datos: DDL (Data Definition Language) Lenguaje.
SQL Sigla del nombre “Structured Query Language”.
1 -Instrucciones del Lenguaje de definición de datos (DDL) se utilizan para crear objetos en la base de datos. -Instrucciones del Lenguaje de control de.
Ing. Esp. Ricardo Cujar Otros Postgres. ALTER TABLE Permite alterar la definición de una tabla. Alter table rename to Permite cambiar el nombre de una.
Base de datos Francisco Castro. Creación de una tabla drop table TABLA cascade constraints; /*==============================================================*/
Comandos de SQL Prog. Orientada a Eventos. Inserción de datos (INSERT) INSERT….VALUES INSERT INTO Tabla1 (Columna1, Columna2…) VALUES (‘ValorAlfa’, ValorNum…);
MSSQL SERVER CURSO BÁSICO 1. DESCRIPCIÓN DEL CURSO. Sesión 4: Sentencia Insert,Transacciones,Insert general, Insert Select * From, Sentencia Update,Update.
Comandos DDL Los comandos DDL son las siglas de Data Definition Language, y se corresponde con el conjunto de órdenes que permiten definir las estructuras.
Creación de Bases de Datos
(Lenguaje de consulta estructurado)
Modificando la estructura de tablas
SQL Lenguaje Estructurado de Consultas. Structured Query Lenguaje (SQL). Lenguaje de acceso a bases de datos. Proyecto de Investigación de IBM. La mayoria.
Usuarios. Colocar el servidor en el modo de autenticación Windows/SqlServer. En SQL Server Management Studio, click derecho, Propiedades en la Instancia.
Departamento de Lenguajes y Sistemas Informáticos escuela técnica superior de ingeniería informática Diseño de Bases de Datos Tema 4: Integridad.
Departamento de Lenguajes y Sistemas Informáticos escuela técnica superior de ingeniería informática Diseño de Bases de Datos Tema 4: Integridad.
SQL: DDL.
Base de Datos SQL - Introductorio - DDL. DEFINICIÓN SQL Volver a los Objetivos.
DLM Transact SQL Sesión I Introducción al SQL Server Uso de las herramientas de consultas del Transact SQL.
ALTER TABLE MODIFICAR LA ESTRUCTURA DE LOS OBJETOS DE UNA BASE DE DATOS.
DML Transact SQL Sesión X Triggers. Duración 2 Horas.
Implementación de funciones definidas por el usuario.
Fundamentos de Bases de Datos
Copyright  Oracle Corporation, All rights reserved. 10 Constraints (Restricciones)
UNIDAD IV. Diseño de Base de Datos Relacionales
Tema 6. Integridad de Datos
Unidad V :- Integridad de datos.
Modificación de datos. Introducción Uso de transacciones Inserción de datos Eliminación de datos Actualización de datos Consideraciones acerca del rendimiento.
Transcripción de la presentación:

Implementación de la integridad de datos

Introducción Tipos de integridad de datos Exigir la integridad de los datos Definición de restricciones Tipos de restricciones Deshabilitación de restricciones Uso de valores predeterminados y reglas Decisión del método de implementación que va a utilizar

Tipos de integridad de datos Integridad de dominio (columnas) Integridad de entidad (filas) Integridad referencial (entre tablas)

Exigir integridad de los datos Integridad de datos declarativa Los criterios se definen en la definición del objeto Asegurada automáticamente por SQL Server Implementada mediante restricciones, valores predeterminados y reglas Integridad de datos procedimental Los criterios se definen en una secuencia de comandos Asegurada mediante secuencia de comandos Implementada mediante desencadenadores y prodedimientos almacenados

Definición de restricciones Determinación del tipo de restricción que se va a utilizar Creación de restricciones Consideraciones para el uso de restricciones

Determinación del tipo de restricción que se va a utilizar Tipo de integridad Tipo de restricción Dominio DEFAULT CHECK REFERENTIAL Entidad PRIMARY KEY UNIQUE Referencial FOREIGN KEY CHECK

Creación de restricciones Utilizar CREATE TABLE o ALTER TABLE Puede agregar restricciones a una tabla con datos existentes Puede aplicar restricciones a una sola columna o a varias columnas Una sola columna, se llama restricción de columna Varias columnas, se llama restricción de tabla

Consideraciones para el uso de restricciones Pueden cambiarse sin volver a crear una tabla Requieren comprobación de errores en aplicaciones y transacciones Comprueban los datos existentes

Tipos de restricciones Restricciones DEFAULT Restricciones CHECK Restricciones PRIMARY KEY Restricciones UNIQUE Restricciones FOREIGN KEY Integridad referencial en cascada

Restricciones DEFAULT Sólo se aplica a las instrucciones INSERT Sólo una restricción DEFAULT por columna No se puede utilizar con la propiedad IDENTITY o el tipo de datos rowversion Permite que se especifiquen algunos valores proporcionados por el sistema USE Northwind ALTER TABLE dbo.Customers ADD CONSTRAINT DF_contactname DEFAULT 'UNKNOWN' FOR ContactName

Restricciones CHECK Se utilizan con las instrucciones INSERT y UPDATE Pueden hacer referencia a otras columnas en la misma tabla No pueden: Utilizarse con el tipo de datos rowversion Contener subconsultas USE Northwind ALTER TABLE dbo.Employees ADD CONSTRAINT CK_birthdate CHECK (BirthDate > '01-01-1900' AND BirthDate < getdate())

Restricciones PRIMARY KEY Sólo una restricción PRIMARY KEY por tabla Los valores deben ser exclusivos No se permiten valores nulos Crea un índice exclusivo en las columnas especificadas USE Northwind ALTER TABLE dbo.Customers ADD CONSTRAINT PK_Customers PRIMARY KEY NONCLUSTERED (CustomerID)

Restricciones UNIQUE Permite un valor nulo Permite varias restricciones UNIQUE en una tabla Definidas con una o más columnas Exigida con un índice único USE Northwind ALTER TABLE dbo.Suppliers ADD CONSTRAINT U_CompanyName UNIQUE NONCLUSTERED (CompanyName)

Restricciones FOREIGN KEY Deben hacer referencia a una restricción PRIMARY KEY o UNIQUE Proporcionan integridad referencial de una o de varias columnas No crean índices automáticamente Los usuarios deben tener permisos SELECT o REFERENCES en las tablas a las que se hace referencia Usa sólo la cláusula REFERENCES en la tabla de ejemplo USE Northwind ALTER TABLE dbo.Orders ADD CONSTRAINT FK_Orders_Customers FOREIGN KEY (CustomerID) REFERENCES dbo.Customers(CustomerID)

Integridad referencial en cascada NINGUNA ACCIÓN CASCADA Customers Customers CustomerID (PK) CustomerID (PK) 1 1 UPDATE CustomerID INSERT new CustomerID CASCADA Orders CustomerID (FK) Orders 2 CustomerID (FK) UPDATE old CustomerID to new CustomerID Customers CustomerID (PK) 3 DELETE old CustomerID

Deshabilitación de restricciones Deshabilitación de la comprobación de las restricciones en los datos existentes Deshabilitación de la comprobación de las restricciones al cargar datos nuevos

Deshabilitación de la comprobación de las restricciones en los datos existentes Se aplica a las restricciones CHECK y FOREIGN KEY Utilice la opción WITH NOCHECK cuando agregue una restricción nueva Utilizar si los datos existentes no cambian Se pueden cambiar los datos existentes antes de agregar restricciones USE Northwind ALTER TABLE dbo.Employees WITH NOCHECK ADD CONSTRAINT FK_Employees_Employees FOREIGN KEY (ReportsTo) REFERENCES dbo.Employees(EmployeeID)

Deshabilitación de la comprobación de las restricciones al cargar datos nuevos Se aplica a las restricciones CHECK y FOREIGN KEY Utilizar si: Los datos cumplen las restricciones Carga datos nuevos que no cumplen las restricciones USE Northwind ALTER TABLE dbo.Employees NOCHECK CONSTRAINT FK_Employees_Employees

Uso de valores predeterminados y reglas Como objetos independientes: Se definen una vez Pueden vincularse a una o más columnas o a tipos de datos definidos por el usuario CREATE DEFAULT phone_no_default AS '(000)000-0000' GO EXEC sp_bindefault phone_no_default, 'Customers.Phone' CREATE RULE regioncode_rule AS @regioncode IN ('IA', 'IL', 'KS', 'MO') GO EXEC sp_bindrule regioncode_rule, 'Customers.Region'

Decisión del método de implementación que va a utilizar Componente de integridad de datos Restricciones Valores predetermi- nados y reglas Desencadenadores Funcionalidad Media Baja Alta Costos de rendimiento Medio-alto Antes o después de la transacción Antes Después Tipos de datos, Null/Not Null