SlideShare una empresa de Scribd logo
1 de 40
Carlos Segura González
         csegura@ull.es
   Definiciones Básicas
   Sistemas Gestores de Bases de Datos (SGBD)
   Modelo de datos: el modelo relacional
   OpenOffice.org Base
   Conjunto de datos, almacenados de forma
    sistemática.
   El acceso a la información se consigue con
    pasos definidos.
   En esta asignatura consideraremos las BBDD
    almacenadas en un ordenador.
   Para ello es preciso digitalizar la información:
    números, cadenas de texto, imágenes, etc.
   Las BD proveen cuatro operaciones
    básicas, conocidas como operaciones CRUD:
    ◦   Create: introducción de nuevos datos en la BD.
    ◦   Read: lectura de datos
    ◦   Update: modificación de datos
    ◦   Delete: borrado de datos
   Antiguamente:
    ◦ Módulos gestores de información implementados
      en la aplicación
    ◦ En su versión más sencilla consistía en un junto de
      ficheros de texto, con un formato propio
    ◦ Ejemplo:
                      Clientes.txt
                      73483759S:Pedro Val
                      38473034P:Juan Blanco
                      38472938J:Laura Díez
   Desventaja del uso de formatos propios
    ◦ Caros: generalmente conlleva implementar gran
      cantidad de código
    ◦ Propenso a errores: códigos grandes y
      complejos, con lo que es fácil cometer fallos
    ◦ Dificultad en el acceso: no es fácil compartir datos
      entre aplicaciones si no se usan formatos comunes
    ◦ Reestructuración de la información: puede conllevar
      cambios grandes en el código
   Ante estos inconvenientes surgió la necesidad de
    unificar el proceso entre las aplicaciones
   Se desarrolló software genérico que se puede utilizar
    para almacenar, manipular y acceder a datos
   Reciben el nombre de Sistemas Gestores de Bases de
    Datos (SGBD)
   Las aplicaciones hacen uso de una interfaz
    común para acceder al SGBD
   Le indican el formato de los datos a gestionar
   La cantidad de código que tienen que
    implementar es mínima
                Aplicación 1




                  …
                Aplicación 2           SGBD




                Aplicación N
   Abstracción: no tenemos que conocer cómo
    se almacenan los datos

   Independencia: se puede cambiar los tipos de
    datos o la forma en que se almacenan, sin
    tener que cambiar la aplicación

   Consistencia: creación de restricciones de
    forma sencilla. Estas restricciones las asegura
    el SGBD. Ejemplo: nota entre 0 y 10
   Seguridad
    ◦ Restringir acceso
    ◦ Copias de seguridad independientes de la
      aplicación
   Minimizan el tiempo de respuesta
    ◦ Dado que es código que lo uso mucha gente, está
      muy bien implementados
   Facilitan el manejo de transacciones
   Son un conjunto de operaciones que se ejecutan como si
    fuera una única operación:

                        Se ejecutan todas
                               o
                        No se ejecuta nada

   Ejemplo1: hacer una transferencia bancaria:
        Operación 1: quitar 3 euros de la cuenta X
        Operación 2: poner 3 euros en la cuenta Y

   Ejemplo2: cambiar titular de una propiedad
        Operación 1: eliminar el titular actual
        Operación 2: asociar nuevo titular
   Las transacciones se aseguran incluso aunque el
    sistema falle
    ◦ Se desconecta de la red
    ◦ Se va la luz
    ◦ Etc.

   Permiten asegurar la consistencia de los datos
   Existen diversas clasificaciones de SGBD
   Según interfaz, es decir, como se pueden
    usar se pueden clasificar en:
    ◦ Interfaz de comandos + lenguaje de programación
    ◦ Interfaz gráfica incluida (modificable)
   Interfaz de comandos + lenguaje de programación
    ◦ La interfaz de comandos suele ser usada para
      administración
    ◦ La creación de interfaces gráficas conlleva programar en
      lenguajes externos al SGBD
    ◦ Son los que mejor rendimiento dan, pero son complejos
    ◦ Ejemplos: MySQL, PostgreSQL, Oracle, Microsoft SQL Server
◦ Con interfaz gráfica incluida
  El propio SGBD permite crear interfaces gráficas para
   acceder/manipular datos
  De forma automática ofrece una interfaz gráfica y se
   puede personalizar
  Más sencillas de utilizar porque no hay que programar
  Tienen problemas de escalabilidad: cuando se usan
   muchos datos, se relentizan (algunos estudios ponen
   el límite en 100.000 registros)
  Ejemplos: Microsoft Access, OpenOffice.org Base
   Independientemente del SGBD hay que definir
    qué información se va a almacenar/manipular
   El primer paso para ello es diseñar la base de
    datos:
    ◦   Definir qué datos se va a almacenar
    ◦   Establecer el significado de los datos
    ◦   Establecer relaciones entre los datos
    ◦   Establecer restricciones en los datos
   Dado un caso concreto, al conjunto de lo
    anterior se le llama esquema de la base de
    datos
   Indicar qué datos se van a almacenar
    ◦ Ejemplo: de los clientes se va a almacenar el
      DNI, Nombre, y Dirección
   Dar significado a los datos
    ◦ Las propias etiquetas suelen dar el significado de los
      datos
    ◦ En algunos casos, junto a la etiqueta se da una
      descripción
   Establecer relaciones entre los datos
    ◦ Ejemplo: en un banco se tiene un listado de clientes y un
      listado de cuentas. Las cuentas pertenecen a los clientes
       Relación entre ellas
   Establecer restricciones en los datos
    ◦ Ej1: un DNI está formado por 8 dígitos y 1 letra
    ◦ Ej2: toda cuenta debe tener un propietario
   Existen múltiples modelos de datos para
    describir las BBDD
   Entre ellos cabe destacar:
    ◦ Modelo relacional
    ◦ Modelo jerárquico
    ◦ Modelo de red
   En este curso usaremos únicamente el
    modelo relacional
   Propuesto por Edgar Frank Codd en 1970
   En sus inicios convivió con otros
    modelos, pero actualmente es el más usado
    con diferencia
   Se basa en el uso de tablas (también llamadas
    relaciones)
   Cada tabla recibe un nombre único
   A cada columna se le asigna un nombre
    único, significativo de lo que almacena. Cada
    columna constituye un atributo o campo.
   Cada atributo tiene un dominio: tipo de dato que
    va a almacenar
   Cada fila es un registro o t-upla
   Dominios
    ◦ Los dominios se especifican para cada atributo
    ◦ Determina qué información (tipo de dato) puede
      contener
    ◦ Además del tipo de dato algunos sistemas dejan
      introducir restricciones sobre los datos
    ◦ Ejemplos:
        Números enteros
        Números reales
        Cadenas de caracteres
        Fecha
        Sí/No
Atributos



               DNI      Nombre   Apellido1   Apellido2   Edad

            36483483S   Pedro    Rodríguez   González     25

            83002582P   Laura    Fernández   Hernández
Registros
                                                          30

            37395629Z   Bruno     López      Fernández    32




                Dominios

                DNI: cadena de caracteres con restriccion
                     (8 caracteres + 1 letra)
                Edad: número entero
                …
   Hay diferentes nomenclaturas
   Nomenclatura 1:
    ◦ Nombre_tabla(Atributo1:Dominio1, Atributo2:Dominio2, …,
                           AtributoN: DominioN)


   Nomenclatura 2:
    ◦ Nombre_tabla(Atributo1, Atributo2, …, AtributoN)
        Atributo1: Dominio1
        Atributo2: Dominio2
        …
        AtributoN: DominioN


   Generalmente la BD estará formada por varias tablas
   Ejemplo:

      Clientes ( DNI, Edad, Dirección, Correo_Electronico, Telefono)

              DNI: cadena de caracteres (máximo 9 caracteres).
                   Los 8 primero son digitos y el último una letra
              Edad: número entero
              Dirección: cadena de caracteres (sin máximo)
              Correo_Electrónico: cadena de caracteres (sin máximo)
              Teléfono: cadena de caracteres (sin máximo)
   El esquema de la base de datos representa qué
    es lo que puede contener la misma: qué datos
    hay, relaciones, restricciones, etc.

   Una instancia representa lo que contiene en un
    determinado momento.

   En un esquema no se muestran registros, pero sí
    los dominios.

   En una instancia se muestran los registros, pero
    no lo dominios.
   Las condiciones de integridad establecen
    requisitos que tienen que cumplir los datos
   Tipos de condiciones de integridad
    ◦ Dominio de los datos.
      Ejemplo: la edad tiene que ser un número
    ◦ Claves primarias o principales
    ◦ Claves ajenas o foráneas
   En cada tabla hay que establecer una clave
    primaria
   Es un campo o conjunto de campos que sirve
    para identificar a cada t-upla
   Por tanto, no puede haber dos registros, en
    los que los valores de la clave primaria sean
    iguales
   En el esquema de la BD se especifica
    subrayando (o poniendo en negrita) los
    campos que constituyen la clave primaria
   Ejemplos: clave de 1 campo


  Clientes( DNI, Edad, Dirección, Correo_Electrónico, Teléfono)



              DNI           Edad        Dirección      Correo_electrónico   Teléfono
                45284829S          15      Av. Bélgica   pedro@gmail.com     658328347
Error           24847382P          28      Av. Madrid      rodrigo@ull.es    638493740
                45284829S          29    Rambla Pulido   maria@gmail.com     638293749
   Ejemplo: clave de 2 campos

Calles( Nombre_calle, CP, Longitud, Iluminada, Índice_Peligrosidad)



               Nombre_calle    CP     Longitud   Iluminada   Índice_Peligrosidad
                 Belgica      38007     20          Si               0
                  Pulido      38007     80          Si               2
Error            Belgica      38008     50          Si               2
                  Pulido      38008     20          No               3
                  Pulido      38007     150         Si               4
   En las tablas podrían existir varios campos que
    identifiquen unívocamente los registros
   Sin embargo, sólo puede haber una clave primaria
   Para asegurar la consistencia, se establece el resto
    como claves alternativas
   No pueden haber duplicados en las claves
    alternativas
   Como clave primaria se suele utilizar por la que
    más a menudo se vayan a buscar datos
   En las tablas podrían existir varios campos que
    identifiquen unívocamente los registros
   Sin embargo, sólo puede haber una clave primaria
   Para asegurar la consistencia, se establece el resto
    como claves alternativas
   No pueden haber duplicados en las claves
    alternativas
   Como clave primaria se suele utilizar por la que
    más a menudo se vayan a buscar datos
   En el esquema se especifica, poniendo:
    ◦ Clave alternativa: Campos que la forman
   En un comercio se quiere mantener una BD
    con sus clientes. Se quiere mantener la
    siguiente información:
    DNI, Nombre, Apellidos, Edad, Pasaporte.

   Clientes(DNI, Nombre, Apellidos, Edad, Pasaporte)
       Clave alternativa: Pasaporte
   Es un campo o conjunto de campos que tienen
    dependencia con otra tabla (Tabla Referenciada)
   Para que los valores de una clave ajena sean
    válidos tienen que aparecer en la Tabla
    Referenciada
   El conjunto de campos que forman la clave
    ajena, tienen que ser clave primaria o clave
    alternativa en la Tabla Referenciada
   Se expresa uniéndolos con flechas que apuntan a la
    Tabla Referenciada, y usando el mismo nombre de
    campo
   Ejemplo de clave ajena (1 campo)
    Clientes( DNI, Nombre)


    Pedidos(Id_Pedido, DNI, Id_Producto, Cantidad)
                              Id_Pedido      DNI    Id_Producto Cantidad
   DNI      Nombre                1       37493847P      3         1
37493847P    Juana                2       34720368S      3         2
34720368S    Laura                3       37493847P      4         1
94739472P   Eduardo               4       89348369K      2         1
                                  5       37493847P      3         2


   El SGBD no permitiría introducir el pedido con id=4
   Ejemplo de clave ajena (varios campos)

     Calles( Nombre_calle, CP, Longitud, Iluminación, Peligrosidad)


     Comercio(Id_Comercio, Nombre_calle, CP, Numero_Empleados)

Nom.calle     CP     Long…         Id_Com. Nom.Calle   CP   Emp.
 Pulido     38007      50             1     Pulido   38007   10
 Bélgica    38048      60             2     Pulido   38007   20
 Madrid     38463      30             3     Pulido   38008   30
 Bélgica    38463      30             4     Castillo 38007   20
                                      5     Bélgica  27363   22
                                      6      Bélgica  38463  25
   No usar el mismo nombre para campos que
    no estén relacionados

   En los SGBD no es necesario usar el mismo
    nombre para un campo que es clave ajena de
    otro, pero al diseñar en papel si.
   Suite ofimática gratuita:
    ◦ Procesador de texto: Write
    ◦ Hoja de cálculo: Calc
    ◦ Sistema Gestor de Base de Datos: Base

   Alternativa gratuita a Microsoft Office
   Está basado en el modelo relacional
   Cinco elementos principales
    ◦ Tablas: permite especificar las tablas del modelo
      relacional
      Atributos y dominios y claves principales de cada tabla
    ◦ Consultas: acceder a parte del contenido
    ◦ Formulario: crear interfaces gráficas
    ◦ Informes: presentar el contenido de forma que se
      pueda imprimir. Resumen de datos, etc.
    ◦ Relaciones: permite definir las claves ajenas
   Creación/Apertura de Bases de datos
   Creación de tablas
   Definición de claves ajenas
   Inserción/Visualización de datos

   Ejercicio 5
   Se quiere implementar una base de datos para una
    tienda en Internet. Cada cliente puede realizar
    transferencias bancarias, de forma que se refleja en el
    crédito asociado a su cuenta. Además del crédito de los
    clientes, se quiere almacenar su DNI, Dirección, y Fecha
    de Nacimiento. En la base de datos se quiere mantener
    además, los productos que se venden en la página web.
    La información que se quiere tener almacenada es un
    identificador del producto, la descripción del
    producto, y su peso. Además, cada vez que se haga un
    pedido, éste se deberá almacenar. Habrá que mantener
    toda la información necesaria para que el pedido se
    pueda enviar al cliente, incluyendo la cantidad pedida.

Más contenido relacionado

La actualidad más candente

Máscaras formatos&ReglasValidacion
Máscaras formatos&ReglasValidacionMáscaras formatos&ReglasValidacion
Máscaras formatos&ReglasValidacionDubraska1
 
Bases de datos my sql
Bases de datos my sqlBases de datos my sql
Bases de datos my sqlevavivez
 
Propiedades del campo
Propiedades del campoPropiedades del campo
Propiedades del campoDubraska1
 
Tipos de datos
Tipos de datosTipos de datos
Tipos de datosDubraska1
 
Cetis 109 jen_ax
Cetis 109 jen_axCetis 109 jen_ax
Cetis 109 jen_axJennimtzy
 
Tipos de datos. Ejercicios en SQL Server
Tipos de datos. Ejercicios en SQL ServerTipos de datos. Ejercicios en SQL Server
Tipos de datos. Ejercicios en SQL Serverjcalvopa
 
Modulo sql unidad 1
Modulo sql  unidad 1Modulo sql  unidad 1
Modulo sql unidad 1firemas
 
Bases De Datos My Sql
Bases De Datos My SqlBases De Datos My Sql
Bases De Datos My SqlArnulfo Gomez
 
Combinar correspondencia-1211304846056042-9
Combinar correspondencia-1211304846056042-9Combinar correspondencia-1211304846056042-9
Combinar correspondencia-1211304846056042-9Angela Realgomez
 
Generación de Interfaces a partir de XML
Generación de Interfaces a partir de XMLGeneración de Interfaces a partir de XML
Generación de Interfaces a partir de XMLJose Benítez Andrades
 
Bases de datos relacionales
Bases de datos relacionalesBases de datos relacionales
Bases de datos relacionalesSantiago Vinueza
 
Bd (1)
Bd (1)Bd (1)
Bd (1)llobas
 

La actualidad más candente (15)

Máscaras formatos&ReglasValidacion
Máscaras formatos&ReglasValidacionMáscaras formatos&ReglasValidacion
Máscaras formatos&ReglasValidacion
 
Bases de datos my sql
Bases de datos my sqlBases de datos my sql
Bases de datos my sql
 
Unidad iv ddl
Unidad iv ddlUnidad iv ddl
Unidad iv ddl
 
Trabajo ddl
Trabajo ddlTrabajo ddl
Trabajo ddl
 
Propiedades del campo
Propiedades del campoPropiedades del campo
Propiedades del campo
 
Tipos de datos
Tipos de datosTipos de datos
Tipos de datos
 
Cetis 109 jen_ax
Cetis 109 jen_axCetis 109 jen_ax
Cetis 109 jen_ax
 
Tipos de datos. Ejercicios en SQL Server
Tipos de datos. Ejercicios en SQL ServerTipos de datos. Ejercicios en SQL Server
Tipos de datos. Ejercicios en SQL Server
 
Clase vectores
Clase vectoresClase vectores
Clase vectores
 
Modulo sql unidad 1
Modulo sql  unidad 1Modulo sql  unidad 1
Modulo sql unidad 1
 
Bases De Datos My Sql
Bases De Datos My SqlBases De Datos My Sql
Bases De Datos My Sql
 
Combinar correspondencia-1211304846056042-9
Combinar correspondencia-1211304846056042-9Combinar correspondencia-1211304846056042-9
Combinar correspondencia-1211304846056042-9
 
Generación de Interfaces a partir de XML
Generación de Interfaces a partir de XMLGeneración de Interfaces a partir de XML
Generación de Interfaces a partir de XML
 
Bases de datos relacionales
Bases de datos relacionalesBases de datos relacionales
Bases de datos relacionales
 
Bd (1)
Bd (1)Bd (1)
Bd (1)
 

Similar a 6. bases de datos

Introduccion a SQL Server 2000
Introduccion a SQL Server 2000Introduccion a SQL Server 2000
Introduccion a SQL Server 2000freddymax
 
D:\Introduccion A Sql 2000 Server
D:\Introduccion A Sql 2000 ServerD:\Introduccion A Sql 2000 Server
D:\Introduccion A Sql 2000 Serverguestb4f410
 
Bases de Datos 1.ppt
Bases de Datos 1.pptBases de Datos 1.ppt
Bases de Datos 1.pptssuser6c30de1
 
Estructura de datos power point
Estructura de datos power pointEstructura de datos power point
Estructura de datos power pointunachi
 
12 reglas de codd
12 reglas de codd12 reglas de codd
12 reglas de coddenriquesyso
 
Base de datos
Base de datosBase de datos
Base de datosSara
 
Bases de datos
Bases de datosBases de datos
Bases de datosSara
 
Base de datos
Base de datosBase de datos
Base de datosSara
 
Base de datos
Base de datosBase de datos
Base de datosSara
 
base de datos power point
base de datos power pointbase de datos power point
base de datos power pointscaitechnonolgy
 

Similar a 6. bases de datos (20)

TODO SOBRE SQL
TODO SOBRE SQLTODO SOBRE SQL
TODO SOBRE SQL
 
Tema3
Tema3Tema3
Tema3
 
Introduccion a SQL Server 2000
Introduccion a SQL Server 2000Introduccion a SQL Server 2000
Introduccion a SQL Server 2000
 
D:\Introduccion A Sql 2000 Server
D:\Introduccion A Sql 2000 ServerD:\Introduccion A Sql 2000 Server
D:\Introduccion A Sql 2000 Server
 
Bases de Datos 1.ppt
Bases de Datos 1.pptBases de Datos 1.ppt
Bases de Datos 1.ppt
 
Estructura de datos power point
Estructura de datos power pointEstructura de datos power point
Estructura de datos power point
 
Intro sql
Intro sqlIntro sql
Intro sql
 
12 reglas de codd
12 reglas de codd12 reglas de codd
12 reglas de codd
 
Base De Datos I
Base De Datos IBase De Datos I
Base De Datos I
 
Base de datos
Base de datosBase de datos
Base de datos
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
Conceptos basicos
Conceptos basicosConceptos basicos
Conceptos basicos
 
Sistemas de Almacenamiento
Sistemas de AlmacenamientoSistemas de Almacenamiento
Sistemas de Almacenamiento
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Wilson bases de datos
Wilson bases de datosWilson bases de datos
Wilson bases de datos
 
base de datos power point
base de datos power pointbase de datos power point
base de datos power point
 
Abstracción de datos
Abstracción de datosAbstracción de datos
Abstracción de datos
 
Bases de datos
Bases de datos Bases de datos
Bases de datos
 

Último

PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxJUANSIMONPACHIN
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptxJunkotantik
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdfOswaldoGonzalezCruz
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfCESARMALAGA4
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxMartín Ramírez
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 
TEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfTEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfDannyTola1
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 

Último (20)

PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docxPLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
PLANIFICACION ANUAL 2024 - INICIAL UNIDOCENTE.docx
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
La Función tecnológica del tutor.pptx
La  Función  tecnológica  del tutor.pptxLa  Función  tecnológica  del tutor.pptx
La Función tecnológica del tutor.pptx
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 
TEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdfTEST DE RAVEN es un test conocido para la personalidad.pdf
TEST DE RAVEN es un test conocido para la personalidad.pdf
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 

6. bases de datos

  • 1. Carlos Segura González csegura@ull.es
  • 2. Definiciones Básicas  Sistemas Gestores de Bases de Datos (SGBD)  Modelo de datos: el modelo relacional  OpenOffice.org Base
  • 3. Conjunto de datos, almacenados de forma sistemática.  El acceso a la información se consigue con pasos definidos.  En esta asignatura consideraremos las BBDD almacenadas en un ordenador.  Para ello es preciso digitalizar la información: números, cadenas de texto, imágenes, etc.
  • 4. Las BD proveen cuatro operaciones básicas, conocidas como operaciones CRUD: ◦ Create: introducción de nuevos datos en la BD. ◦ Read: lectura de datos ◦ Update: modificación de datos ◦ Delete: borrado de datos
  • 5. Antiguamente: ◦ Módulos gestores de información implementados en la aplicación ◦ En su versión más sencilla consistía en un junto de ficheros de texto, con un formato propio ◦ Ejemplo: Clientes.txt 73483759S:Pedro Val 38473034P:Juan Blanco 38472938J:Laura Díez
  • 6. Desventaja del uso de formatos propios ◦ Caros: generalmente conlleva implementar gran cantidad de código ◦ Propenso a errores: códigos grandes y complejos, con lo que es fácil cometer fallos ◦ Dificultad en el acceso: no es fácil compartir datos entre aplicaciones si no se usan formatos comunes ◦ Reestructuración de la información: puede conllevar cambios grandes en el código
  • 7. Ante estos inconvenientes surgió la necesidad de unificar el proceso entre las aplicaciones  Se desarrolló software genérico que se puede utilizar para almacenar, manipular y acceder a datos  Reciben el nombre de Sistemas Gestores de Bases de Datos (SGBD)
  • 8. Las aplicaciones hacen uso de una interfaz común para acceder al SGBD  Le indican el formato de los datos a gestionar  La cantidad de código que tienen que implementar es mínima Aplicación 1 … Aplicación 2 SGBD Aplicación N
  • 9. Abstracción: no tenemos que conocer cómo se almacenan los datos  Independencia: se puede cambiar los tipos de datos o la forma en que se almacenan, sin tener que cambiar la aplicación  Consistencia: creación de restricciones de forma sencilla. Estas restricciones las asegura el SGBD. Ejemplo: nota entre 0 y 10
  • 10. Seguridad ◦ Restringir acceso ◦ Copias de seguridad independientes de la aplicación  Minimizan el tiempo de respuesta ◦ Dado que es código que lo uso mucha gente, está muy bien implementados  Facilitan el manejo de transacciones
  • 11. Son un conjunto de operaciones que se ejecutan como si fuera una única operación: Se ejecutan todas o No se ejecuta nada  Ejemplo1: hacer una transferencia bancaria: Operación 1: quitar 3 euros de la cuenta X Operación 2: poner 3 euros en la cuenta Y  Ejemplo2: cambiar titular de una propiedad Operación 1: eliminar el titular actual Operación 2: asociar nuevo titular
  • 12. Las transacciones se aseguran incluso aunque el sistema falle ◦ Se desconecta de la red ◦ Se va la luz ◦ Etc.  Permiten asegurar la consistencia de los datos
  • 13. Existen diversas clasificaciones de SGBD  Según interfaz, es decir, como se pueden usar se pueden clasificar en: ◦ Interfaz de comandos + lenguaje de programación ◦ Interfaz gráfica incluida (modificable)
  • 14. Interfaz de comandos + lenguaje de programación ◦ La interfaz de comandos suele ser usada para administración ◦ La creación de interfaces gráficas conlleva programar en lenguajes externos al SGBD ◦ Son los que mejor rendimiento dan, pero son complejos ◦ Ejemplos: MySQL, PostgreSQL, Oracle, Microsoft SQL Server
  • 15. ◦ Con interfaz gráfica incluida  El propio SGBD permite crear interfaces gráficas para acceder/manipular datos  De forma automática ofrece una interfaz gráfica y se puede personalizar  Más sencillas de utilizar porque no hay que programar  Tienen problemas de escalabilidad: cuando se usan muchos datos, se relentizan (algunos estudios ponen el límite en 100.000 registros)  Ejemplos: Microsoft Access, OpenOffice.org Base
  • 16. Independientemente del SGBD hay que definir qué información se va a almacenar/manipular  El primer paso para ello es diseñar la base de datos: ◦ Definir qué datos se va a almacenar ◦ Establecer el significado de los datos ◦ Establecer relaciones entre los datos ◦ Establecer restricciones en los datos  Dado un caso concreto, al conjunto de lo anterior se le llama esquema de la base de datos
  • 17. Indicar qué datos se van a almacenar ◦ Ejemplo: de los clientes se va a almacenar el DNI, Nombre, y Dirección  Dar significado a los datos ◦ Las propias etiquetas suelen dar el significado de los datos ◦ En algunos casos, junto a la etiqueta se da una descripción  Establecer relaciones entre los datos ◦ Ejemplo: en un banco se tiene un listado de clientes y un listado de cuentas. Las cuentas pertenecen a los clientes  Relación entre ellas  Establecer restricciones en los datos ◦ Ej1: un DNI está formado por 8 dígitos y 1 letra ◦ Ej2: toda cuenta debe tener un propietario
  • 18. Existen múltiples modelos de datos para describir las BBDD  Entre ellos cabe destacar: ◦ Modelo relacional ◦ Modelo jerárquico ◦ Modelo de red  En este curso usaremos únicamente el modelo relacional
  • 19. Propuesto por Edgar Frank Codd en 1970  En sus inicios convivió con otros modelos, pero actualmente es el más usado con diferencia  Se basa en el uso de tablas (también llamadas relaciones)
  • 20. Cada tabla recibe un nombre único  A cada columna se le asigna un nombre único, significativo de lo que almacena. Cada columna constituye un atributo o campo.  Cada atributo tiene un dominio: tipo de dato que va a almacenar  Cada fila es un registro o t-upla
  • 21. Dominios ◦ Los dominios se especifican para cada atributo ◦ Determina qué información (tipo de dato) puede contener ◦ Además del tipo de dato algunos sistemas dejan introducir restricciones sobre los datos ◦ Ejemplos:  Números enteros  Números reales  Cadenas de caracteres  Fecha  Sí/No
  • 22. Atributos DNI Nombre Apellido1 Apellido2 Edad 36483483S Pedro Rodríguez González 25 83002582P Laura Fernández Hernández Registros 30 37395629Z Bruno López Fernández 32 Dominios DNI: cadena de caracteres con restriccion (8 caracteres + 1 letra) Edad: número entero …
  • 23. Hay diferentes nomenclaturas  Nomenclatura 1: ◦ Nombre_tabla(Atributo1:Dominio1, Atributo2:Dominio2, …, AtributoN: DominioN)  Nomenclatura 2: ◦ Nombre_tabla(Atributo1, Atributo2, …, AtributoN) Atributo1: Dominio1 Atributo2: Dominio2 … AtributoN: DominioN  Generalmente la BD estará formada por varias tablas
  • 24. Ejemplo: Clientes ( DNI, Edad, Dirección, Correo_Electronico, Telefono) DNI: cadena de caracteres (máximo 9 caracteres). Los 8 primero son digitos y el último una letra Edad: número entero Dirección: cadena de caracteres (sin máximo) Correo_Electrónico: cadena de caracteres (sin máximo) Teléfono: cadena de caracteres (sin máximo)
  • 25. El esquema de la base de datos representa qué es lo que puede contener la misma: qué datos hay, relaciones, restricciones, etc.  Una instancia representa lo que contiene en un determinado momento.  En un esquema no se muestran registros, pero sí los dominios.  En una instancia se muestran los registros, pero no lo dominios.
  • 26. Las condiciones de integridad establecen requisitos que tienen que cumplir los datos  Tipos de condiciones de integridad ◦ Dominio de los datos.  Ejemplo: la edad tiene que ser un número ◦ Claves primarias o principales ◦ Claves ajenas o foráneas
  • 27. En cada tabla hay que establecer una clave primaria  Es un campo o conjunto de campos que sirve para identificar a cada t-upla  Por tanto, no puede haber dos registros, en los que los valores de la clave primaria sean iguales  En el esquema de la BD se especifica subrayando (o poniendo en negrita) los campos que constituyen la clave primaria
  • 28. Ejemplos: clave de 1 campo Clientes( DNI, Edad, Dirección, Correo_Electrónico, Teléfono) DNI Edad Dirección Correo_electrónico Teléfono 45284829S 15 Av. Bélgica pedro@gmail.com 658328347 Error 24847382P 28 Av. Madrid rodrigo@ull.es 638493740 45284829S 29 Rambla Pulido maria@gmail.com 638293749
  • 29. Ejemplo: clave de 2 campos Calles( Nombre_calle, CP, Longitud, Iluminada, Índice_Peligrosidad) Nombre_calle CP Longitud Iluminada Índice_Peligrosidad Belgica 38007 20 Si 0 Pulido 38007 80 Si 2 Error Belgica 38008 50 Si 2 Pulido 38008 20 No 3 Pulido 38007 150 Si 4
  • 30. En las tablas podrían existir varios campos que identifiquen unívocamente los registros  Sin embargo, sólo puede haber una clave primaria  Para asegurar la consistencia, se establece el resto como claves alternativas  No pueden haber duplicados en las claves alternativas  Como clave primaria se suele utilizar por la que más a menudo se vayan a buscar datos
  • 31. En las tablas podrían existir varios campos que identifiquen unívocamente los registros  Sin embargo, sólo puede haber una clave primaria  Para asegurar la consistencia, se establece el resto como claves alternativas  No pueden haber duplicados en las claves alternativas  Como clave primaria se suele utilizar por la que más a menudo se vayan a buscar datos  En el esquema se especifica, poniendo: ◦ Clave alternativa: Campos que la forman
  • 32. En un comercio se quiere mantener una BD con sus clientes. Se quiere mantener la siguiente información: DNI, Nombre, Apellidos, Edad, Pasaporte.  Clientes(DNI, Nombre, Apellidos, Edad, Pasaporte) Clave alternativa: Pasaporte
  • 33. Es un campo o conjunto de campos que tienen dependencia con otra tabla (Tabla Referenciada)  Para que los valores de una clave ajena sean válidos tienen que aparecer en la Tabla Referenciada  El conjunto de campos que forman la clave ajena, tienen que ser clave primaria o clave alternativa en la Tabla Referenciada  Se expresa uniéndolos con flechas que apuntan a la Tabla Referenciada, y usando el mismo nombre de campo
  • 34. Ejemplo de clave ajena (1 campo) Clientes( DNI, Nombre) Pedidos(Id_Pedido, DNI, Id_Producto, Cantidad) Id_Pedido DNI Id_Producto Cantidad DNI Nombre 1 37493847P 3 1 37493847P Juana 2 34720368S 3 2 34720368S Laura 3 37493847P 4 1 94739472P Eduardo 4 89348369K 2 1 5 37493847P 3 2  El SGBD no permitiría introducir el pedido con id=4
  • 35. Ejemplo de clave ajena (varios campos) Calles( Nombre_calle, CP, Longitud, Iluminación, Peligrosidad) Comercio(Id_Comercio, Nombre_calle, CP, Numero_Empleados) Nom.calle CP Long… Id_Com. Nom.Calle CP Emp. Pulido 38007 50 1 Pulido 38007 10 Bélgica 38048 60 2 Pulido 38007 20 Madrid 38463 30 3 Pulido 38008 30 Bélgica 38463 30 4 Castillo 38007 20 5 Bélgica 27363 22 6 Bélgica 38463 25
  • 36. No usar el mismo nombre para campos que no estén relacionados  En los SGBD no es necesario usar el mismo nombre para un campo que es clave ajena de otro, pero al diseñar en papel si.
  • 37. Suite ofimática gratuita: ◦ Procesador de texto: Write ◦ Hoja de cálculo: Calc ◦ Sistema Gestor de Base de Datos: Base  Alternativa gratuita a Microsoft Office
  • 38. Está basado en el modelo relacional  Cinco elementos principales ◦ Tablas: permite especificar las tablas del modelo relacional  Atributos y dominios y claves principales de cada tabla ◦ Consultas: acceder a parte del contenido ◦ Formulario: crear interfaces gráficas ◦ Informes: presentar el contenido de forma que se pueda imprimir. Resumen de datos, etc. ◦ Relaciones: permite definir las claves ajenas
  • 39. Creación/Apertura de Bases de datos  Creación de tablas  Definición de claves ajenas  Inserción/Visualización de datos  Ejercicio 5
  • 40. Se quiere implementar una base de datos para una tienda en Internet. Cada cliente puede realizar transferencias bancarias, de forma que se refleja en el crédito asociado a su cuenta. Además del crédito de los clientes, se quiere almacenar su DNI, Dirección, y Fecha de Nacimiento. En la base de datos se quiere mantener además, los productos que se venden en la página web. La información que se quiere tener almacenada es un identificador del producto, la descripción del producto, y su peso. Además, cada vez que se haga un pedido, éste se deberá almacenar. Habrá que mantener toda la información necesaria para que el pedido se pueda enviar al cliente, incluyendo la cantidad pedida.