You are on page 1of 26

Anda Juárez Mauricio Ojeda José Concepción Lamadrid cabrera enrique Ramírez Ortega Antonio de Jesús

Una base de datos determinada podría estar sujeta a cualquier cantidad de restricciones de integridad (en general) de una complejidad arbitraria. En la mayoría de los sistemas actuales.  . la verificación de la integridad se realiza mediante códigos de procedimientos escritos por los usuarios. La integridad en una base de datos se refiere a la corrección y exactitud de la información contenida. Un control de integridad o restricción es aquel que nos permite definir con precisión el rango de valores válidos para un elemento y/o las operaciones que serán consideraciones válidas en la relación de tales elementos.

2.2.1 validar y verificar integridad de entidad e integridad referencial .

En esta no está permitido que algún componente de la clave primaria acepte valores nulos. Los valores de la clave primaria sirven como identificadores en la base de datos. Las entidades en la realidad son identificables por definición. Los valores de clave primaria no pueden ser nulos. . Sus contrapartes en la base de datos también deben ser identificables.  Las razones de esta regla son:      Las tuplas en las relaciones base representan entidades en la realidad.Integridad de Entidad Las restricciones de entidades aseguran la integridad de las entidades que son modeladas por el sistema. la existencia de una clave principal es una restricción de entidad que impone la regla "cada entidad debe estar identificada de forma única". En el nivel más simple.

debe ser completamente nulo. o bien. Esta regla se aplica a las claves foráneas. existen dos opciones: rechazar la operación ilegal o bien aceptar la operación y realizar operaciones adicionales compensatorias que conduzcan a volverla legal. Así que cuando se realiza una operación ilegal. . SQL Server impide a los usuarios:  Agregar o cambiar filas en una tabla relacionada si no hay ninguna fila asociada en la tabla principal. entonces sus valores deben coincidir con los valores de la clave primaria a la que hace referencia.  Cambiar valores en una tabla principal que crea filas huérfanas en una tabla relacionada. Si en una relación hay alguna clave foránea.  Eliminar filas de una tabla principal cuando hay filas relacionadas coincidentes. Integridad Referencial La regla de Integridad referencial define que la base de datos no debe contener valores de claves foráneas sin concordancia. Cuando se exige la integridad referencial.

Ejemplo de integridad referencial .

.

 . borrar o editar usuarios. los triggers pueden ser de inserción (INSERT). Estas palabras se refieren a los valores que tienen las columnas antes y después de la modificación. La operación INSERT permiten el uso de NEW. Un trigger (o disparador) en una Base de datos . Además manejan dos palabras clave. Dependiendo de la base de datos. Un trigger se puede ejecutar antes (BEFORE) o desués (AFTER) de que sean modificados los datos. tablas. actualización (UPDATE) o borrado (DELETE). OLD y NEW. la DELETE sólo OLD y UPDATE ambas. es un procedimiento que se ejecuta cuando se cumple una condición establecida al realizar una operación. bases de datos u otros objetos. Algunas bases de datos pueden ejecutar triggers al crear.

etc. pueden generar valores de columnas.  .  Permite implementar programas basados en paradigma lógico (sistemas expertos. sin necesidad de contar con que el usuario ejecute la sentencia de SQL.  Además. deducción).USOS Son usados para mejorar la administración de la Base de datos. sincroniza tablas. previene errores de datos. modifica valores de una vista.

Esta restricción puede ser de tipo condicional o de tipo nulidad. . Acción a ejecutar: es la secuencia de instrucciones a ejecutar una vez que se han cumplido las condiciones iniciales. 2. Restricción: es la condición necesaria para realizar el código. 3. 1.Componentes principales La estructura básica de un trigger es: Llamada de activación: es la sentencia que permite "disparar" el código a ejecutar.

Pueden ser de sesión y almacenados.Tipos Existen dos tipos de disparadores que se clasifican según la cantidad de ejecuciones a realizar: Row Triggers (o Disparadores de fila): son aquellas que se ejecutaran n-veces si se llama n-veces desde la tabla asociada al trigger 2. 1. pero no son de fiar . Statement Triggers (o Disparadores de secuencia): son áquellos que sin importar la cantidad de veces que se cumpla con la condición. su ejecución es única.

 Pueden causar errores de mutaciones en las tablas. END IF.POLVE. si se han escrito de manera deficiente. sea inferior a un valor dado.producto < 100 THEN INSERT INTO tabla_pedidos(producto) VALUES ('1000'). SELECT DBO.Efectos y características No aceptan parámetros o argumentos (pero podrían almacenar los datos afectados en tablas temporales)  No pueden ejecutar las operaciones COMMIT o ROLLBACK por que estas son parte de la sentencia SQL del disparador (únicamente a través de transacciones autónomas). Ejemplo  Un sencillo ejemplo (para SQL Server) sería crear un Trigger para insertar un pedido de algún producto cuando la cantidad de éste. en nuestro almacén. BEFORE UPDATE ON tabla_almacen FOR ALL records IF :NEW.TEST END .

creando un disparador que se active siempre que una tabla se modifique.  . hace que los usuarios entren sólo valores válidos.Ventajas Las ventajas de usar los Disparadores son: La entrada en vigor automática de restricciones de los datos. Una aplicación puede guardar un registro corriente de cambios.  Logs automáticos de cambios a las tablas.  El mantenimiento de la aplicación se reduce. los cambios a un disparador se refleja automáticamente en todas las aplicaciones que tienen que ver con la tabla sin la necesidad de recompilar o relinquear.  La notificación automática de cambios a la Base de Datos con alertas de evento en los disparadores.

.

el cual usualmente corre en un servidor separado. es ejecutado directamente en el motor de bases de datos. La ventaja de un procedimiento almacenado es que al ser ejecutado. . en respuesta a una petición de usuario.Un procedimiento almacenado (stored procedure en inglés) es un programa (o procedimiento) el cual es almacenado físicamente en una base de datos.

marca)........ ..exec autos……….IN marca VARCHAR(50)) BEGIN IF velocidad < 120 THEN INSERT INTO familiares VALUES(velocidad. END... END IF...marca).. | ……………………. ELSE INSERT INTO deportivos VALUES(velocidad.Creación de Procedimientos Almacenados en MySQL DELIMITER | CREATE PROCEDURE autos(IN velocidad INT......

3 Definición Esquema Seguridad .2.

sean estos . Fallos humanos. Fallos logicos.La protección deberá llevarse a cabo contra: Fallos fisicos. ya intencionados o no.

El SGBD facilita normalmente mecanismos para prevenir los fallos. los corrompen. .Estos fallos alteran indebidamente los datos. para detectarlos una vez que se han producido y para corregirlos después de haber sido detectados. con lo que la base de datos ya no puede servir para los fines que fue creada.

Actualmente se considera generalmente aceptado que la seguridad comprende 3 aspectos fundamentales: Confidencialidad Accesibilidad Integridad .

1 Creación de usuarios de la base de datos. .2.3.

Un usuario generalmente se identifica frente al sistema o servicio utilizando un nombre de usuario y a veces una contraseña.En informática. servicio o cualquier sistema informático. . Por lo general es una única persona. Un usuario registrado accede a un servicio a través de un login luego de su autentificación. un usuario es un individuo que utiliza una computadora. sistema operativo.

Expanda la base de datos en la que se va a crear el usuario de la misma. haga clic en Usuario. seleccione Nuevo y. abra el Explorador de objetos y expanda la carpeta Bases de datos. escriba un nombre para el usuario en el cuadro Nombre de usuario. Haga clic en Aceptar. En el cuadro Nombre de inicio de sesión. . Haga clic con el botón secundario en la carpeta Seguridad. escriba el nombre de un inicio de sesión de SQL Server para asignarlo al usuario de la base de datos. a continuación. En la página General.Para crear un usuario de base de datos mediante SQL Server Management Studio       En SQL Server Management Studio.

2 Asignación de privilegios sobre los objetos de información. .3.2.

reglas. métodos. herramientas y leyes concebidas para minimizar los posibles riesgos a la infraestructura o a la información. Sobre nuestra base de datos.  . registros o tablas existentes en ella. Una serie de estándares.  Permisos que se dan a los usuarios.Privilegios. protocolos.