1 / 51

Administración de bases de datos

Administración de bases de datos. Ingeniería en Sistemas Computacionales. Información general. Francisco Antonio Castillo Velásquez f rancisco.castillo@upq.edu.mx francisco_velasquez@yahoo.com.mx Horario de clase grupo S502: Lunes y miércoles 19:00 – 20:40 Asesoría viernes 17:20 – 18:10.

adanne
Download Presentation

Administración de bases de datos

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Administración de bases de datos Ingeniería en Sistemas Computacionales

  2. Información general Francisco Antonio Castillo Velásquez francisco.castillo@upq.edu.mx francisco_velasquez@yahoo.com.mx Horario de clase grupo S502: Lunes y miércoles 19:00 – 20:40 Asesoría viernes 17:20 – 18:10

  3. Objetivo El alumno será capaz de comprender los procesos de almacenamiento, acceso a la información y administración de un sistema administrador de bases de datos (SABD, SMBD, SGBD, DBMS)

  4. Temario Fundamentos de administración de bd’s Administración de bd’s Administración de usuarios Seguridad e integridad Respaldo y recuperación

  5. Bibliografía Sistemas de Gestión de Bases de Datos Ramakrishman, McGraw-Hill, 3ª Ed. 2007 Fundamentos de Bases de Datos Silberschatz, A. McGraw-Hill, 5ª Ed. 2006 SQL Server 2008, Paso a Paso Hotek, M. Anaya, 2009

  6. Evaluaciones • 1er parcial: 30 de enero • 2º parcial: 1ª semana de marzo • 3er parcial: 2ª semana de abril • Final: 4ª semana de abril

  7. Evaluaciones • Examen 50% • Prácticas 30% • Tareas 20% • Participaciones son un plus

  8. Ligas de interés www.microsoft.com/sqlserverexpress www.mysql.com/downloads

  9. Ligas de interés www.netbeans.org/downloads Administración de bases de datos (MySQL)

  10. Conceptos Base de datos Es una colección de datos relacionados con un tema u objetivo concreto Tabla Es una estructura de datos bidimensional donde es posible almacenar datos relacionados

  11. Conceptos campos (atributos) registros relación llave primaria

  12. Conceptos • Sistema administrador de bases de datos (SABD, SGBD, DBMS) • Es una colección de programas que permiten a los usuarios crear y mantener bases de datos • Es un software de propósito general que facilita el proceso de definir, construir, manipular y compartir bases de datos entre varios usuarios y aplicaciones

  13. Conceptos

  14. Conceptos • Aridad o grado • Cardinalidad • Llave primaria y secundaria • Dominio • Procedimiento almacenado • Trigger (desencadenador)

  15. Conceptos relación cardinalidad grado (aridad)

  16. Tipos de datos (T-SQL)

  17. Tipos de datos (T-SQL)

  18. Tipos de datos (T-SQL)

  19. Vistas Una vista es una tabla virtual cuyo contenido está definido por una consulta. Al igual que una tabla real, una vista consta de un conjunto de columnas y filas de datos que proceden de tablas a las que se hace referencia en la consulta y se producen de forma dinámica cuando se hace referencia a la vista.

  20. Vistas

  21. Utilización de vistas • Para centrarse en datos específicos • Para simplificar la manipulación de datos

  22. Utilización de vistas • Para proporcionar compatibilidad con versiones anteriores

  23. Procedimientos almacenados Un procedimiento almacenado (storedprocedure -SP) es un conjunto de comandos SQL que pueden almacenarse en un servidor.

  24. Procedimientos almacenados • Similitud con funciones en programación: • Parámetros de entrada / parámetros de salida • Pueden llamar a otros procedimientos • Devuelven un valor de estado a un programa que realiza una llamada

  25. Ventajas de los SPs • Tráfico de red reducido entre el cliente y el servidor • Mayor seguridad • Reutilización de código

  26. Ventajas de los SPs • Mantenimiento más sencillo • Rendimiento mejorado

  27. Sintaxis (en SQL Server)

  28. Ejemplo (parámetro de entrada) CREATE PROCEDURE MiProc@Ciudad nvarchar(30) AS SELECT * FROM MiTabla WHERE Ciudad = @Ciudad EXECMiProc @Ciudad=‘Querétaro’

  29. Ejemplo (parámetro de salida)

  30. SPs del sistema

  31. SPs del sistema

  32. SPs del sistema

  33. Funciones (SQL Server) • Integradas • Agregado: • AVG, COUNT, MAX, MIN, SUM, VAR, … • Escalares: • Matemáticas: ABS, COS, EXP, POWER, … • De Cadena: CHAR, CONCAT, LEN, REPLACE, … • Entre otras • Definidas por el usuario (UDF)

  34. Funciones definidas por el usuario

  35. Funciones (ejemplo) CREATE FUNCTION ElevarAlCubo(@base INT) RETURNS__________ AS BEGIN RETURN__________________ END

  36. Funciones (ejercicio) Crear una función que dado un entero que represente un día de la semana, regrese el nombre literal del día

  37. Funciones (ejercicio) CREATE FUNCTION CalcularVolumenCubo -- dimensiones de entrada en cms (@Longituddecimal(4,1), @Anchuradecimal(4,1), @Alturadecimal(4,1) ) RETURNS decimal(12,3) -- cmscúbicos AS BEGIN RETURN ( @Longitud* @Anchura* @Altura ) END

  38. Funciones (ejercicio) CREATETABLECubos ( numero intPRIMARYKEY, color nchar(20), altura decimal(4,1), longitud decimal(4,1), anchura decimal(4,1), volumen AS ( dbo.CalcularVolumenCubo(altura, longitud, anchura) ) )

  39. Funciones definidas por el usuario

  40. Funciones definidas por el usuario CREATE FUNCTION MuestraInfoCubos(@numint) RETURNS TABLE RETURN selectnumero, volumen from Cubos where numero < @num

  41. Triggers (desencadenadores, disparadores) • Es un objeto de base de datos que está asociado a una tabla y que se activa cuando ocurre un evento particular para dicha tabla. • Verificaciones de valores a insertarse en la tabla • Llevar a cabo cálculos sobre los valores implicados en una actualización • Se activa cuando se ejecuta un INSERT, DELETE o UPDATE

  42. Triggers • Los triggers se activan solo por sentencias SQL • Un trigger puede llamar a un SP • Un trigger no puede ser asociada a una tabla temporal o a una vista • No puede haber dos triggers para una misma tabla con el mismo evento y acción en el

  43. Triggers (sintaxis –SQL Server)

  44. Triggers (sintaxis –MySQL) BEFORE, AFTER INSERT, UPDATE, DELETE INSERT = INSERT, LOAD DATA, REPLACE UPDATE = UPDATE DELETE = DELETE, REPLACE

  45. Triggers CREATE TRIGGER upd_check BEFORE UPDATE ON account FOR EACH ROW BEGIN IF NEW.amount < 0 THEN SET NEW.amount = 0; ELSEIFNEW.amount > 100 THEN SET NEW.amount = 100; END IF; END

  46. Triggers • Solo puede ser aplicado a una tabla • Crear/alterar/borrar una bd no está permitido • Asociados a tablas permanentes (no temporales ni vistas) • En MySQL no pueden contener la instrucción CALL

  47. III Administración de usuarios

  48. Administración de usuarios • Inicio de sesión (IS): • Un IS es una entidad de seguridad o una entidad que puede ser autenticada por un sistema seguro • Los usuarios necesitan iniciar sesión para conectarse a SQL Server • Se pueden conceder permisos a los IS’s • El ámbito de un IS es todo el motor de bd • Los permisos dentro de la bd se conceden y deniegan al usuario de la bd, no al inicio de sesión

  49. Administración de usuarios • Usuario de base de datos (UBD): • Un UBD es una entidad de seguridad de la bd • El ámbito de un UBD es la bd • El UBD es la identidad del inicio de sesión cuando está conectado a una bd • El UBD puede utilizar el mismo nombre que el inicio de sesión, pero no es necesario • Los permisos dentro de la bd se conceden y deniegan al UBD, no al IS

  50. Roles de servidor para los IS’s

More Related