Download Base de Datos

Document related concepts

Base de datos relacional wikipedia , lookup

Modelo de base de datos wikipedia , lookup

Base de datos wikipedia , lookup

Modelo relacional wikipedia , lookup

Capa de acceso a datos wikipedia , lookup

Transcript
Base de
Datos
Tricia Salazar Valverde
Base de Datos



Conjunto perteneciente a un mismo contexto y
almacenados en un software para su posterior
uso.
Se puede almacenar, recopilar y organizar
información.
Existen programas denominados “Sistemas
Gestores de Bases de Datos” (SGBD), es un
conjunto de programas que permiten el
almacenamiento, modificación y extracción
de la información en una base de datos,
además de proporcionar herramientas para
añadir, borrar, modificar y analizar los datos.
Tipos de Base de Datos


Según la variabilidad de los datos almacenados
Bases de datos estáticas: Son bases de datos de sólo lectura,
utilizadas para almacenar datos y conocer su comportamiento
de un conjunto de datos a través del tiempo, realizar
proyecciones y tomar decisiones.
Bases de datos dinámicas: Éstas son bases de datos donde la
información almacenada se modifica con el tiempo,
permitiendo operaciones como actualización, borrado y
adición de datos, además de las operaciones de consulta.
Según el contenido
Bases de datos bibliográficas: Sólo contienen un representante
de la fuente primaria, que permite localizarla.
Puede contener un resumen o extracto de la publicación
original, pero nunca el texto completo, porque si no, estaríamos
en presencia de una base de datos a texto completo.
Bases de datos de texto completo: Almacenan las fuentes
primarias
Directorios: son las guías telefónicas en formato electrónico.
Abstracción de la información



Una base de datos es una colección de
archivos relacionados entre sí, de la cual los
usuarios pueden extraer información.
Un objetivo de un sistema de base de datos
es proporcionar a los usuarios una visión
abstracta de los datos, es decir, el sistema
esconde ciertos detalles de cómo se
almacenan y mantienen los datos.
Existen diferentes niveles de abstracción para
simplificar la interacción de los usuarios con el
sistema: Interno, conceptual y externo.
Nivel físico
 Se describe en detalle la forma en como de
almacenan los datos en los dispositivos de
almacenamiento.
Nivel conceptual



Se describe que datos son almacenados realmente en la base de
datos y las relaciones que existen entre los mismos; y su estructura de
diseño.
El nivel conceptual de abstracción lo usan los administradores de
bases de datos, quienes deciden qué información se va a guardar
en la base de datos.
Consta de las siguientes definiciones:
Definición de los datos: Se describen el tipo de datos y la longitud
de campo de todos los elementos direccionables en la base. Los
elementos por definir incluyen artículos elementales (atributos),
totales de datos y registros conceptuales (entidades).
Relaciones entre datos: Se definen las relaciones entre datos para
enlazar tipos de registros relacionados para el procesamiento de
archivos múltiples.
Nivel de visión

Nivel más alto de abstracción, es lo que el usuario
final puede visualizar del sistema terminado,
describe sólo una parte de la base de datos al
usuario acreditado para verla.
Modelo de Base de Datos



Un modelo de datos es una "descripción" de
algo conocido como contenedor de datos
(lugar donde se guarda la información), así
como de los métodos para almacenar y
recuperar información de esos contenedores.
Los modelos de datos no son cosas físicas:
son abstracciones que permiten la
implementación de un sistema de base de
datos; por lo general se refieren a algoritmos,
y conceptos matemáticos.
Algunos modelos con frecuencia utilizados en
las bases de datos:
Bases de datos jerárquicas
Los datos se organizan en forma de árbol invertido
(raíz), en donde un nodo padre de información
puede tener varios hijos.
El nodo que no tiene padres es llamado raíz, y a los
nodos que no tienen hijos se los conoce como
hojas.
Las bases de datos jerárquicas son útiles en
aplicaciones que manejan un gran volumen de
información y datos muy compartidos permitiendo
crear estructuras estables y de gran rendimiento.
Una de las principales limitaciones de este modelo
es su incapacidad de representar eficientemente
la redundancia de datos (abundancia de datos).

 Base
de datos de red
La diferencia del modelo anterior es la
modificación del concepto de nodo: se
permite que un mismo nodo tenga varios
padres.
Este modelo ofrecía una solución eficiente al
problema de redundancia de datos; pero,
aún así, la dificultad que significa administrar
la información en una base de datos de red
ha significado que sea un modelo utilizado
en su mayoría por programadores más que
por usuarios finales.
 Bases
de datos transaccionales
Son bases de datos cuyo fin es el envío y
recepción de datos a grandes velocidades.
Su único fin es recolectar y recuperar los
datos a la mayor velocidad posible, por lo
tanto la redundancia y duplicación de
información no es un problema como con
las demás bases de datos, por lo general
para poderlas aprovechar al máximo
permiten algún tipo de conectividad a
bases de datos relacionales.

Bases de datos relacionales
Éste es el modelo utilizado en la actualidad para modelar problemas
reales y administrar datos dinámicamente.
Tras ser postulados sus fundamentos en 1970 por Codd, se consolido
como un nuevo paradigma en los modelos de base de datos.
Su idea es el uso de "relaciones",considerardose en forma lógica como
conjuntos de datos llamados "tuplas".
En cada relación hay una tabla que está compuesta por registros (filas),
que representarían las tuplas, y campos (columnas).
La ventaja es que es fácil de entender y utilizar para un usuario de la
base de datos.
La información puede ser recuperada o almacenada mediante
"consultas" que ofrecen una flexibilidad y administracion de la
información.
El lenguaje para construir las consultas es SQL, un estándar
implementado por los sistemas de gestión de bases de datos
relacionales.
Durante su diseño, una base de datos relacional pasa por un proceso al
que se le conoce como “normalización de una base de datos”.
 Bases
de datos multidimensionales
No se diferencian demasiado de las bases de
datos relacionales, la única diferencia está a
nivel conceptual; en las bases de datos
multidimensionales los campos o atributos de
una tabla pueden ser de dos tipos:


representan dimensiones de la tabla
representan métricas que se desean estudiar

Bases de datos orientadas a objetos
Este modelo trata de almacenar en la base de datos
los objetos completos (estado y comportamiento).
Una base de datos orientada a objetos es una base
de datos que incorpora todos los conceptos
importantes del paradigma de objetos:



Encapsulación - Propiedad que permite ocultar la
información al resto de los objetos.
Herencia - Propiedad a través de la cual los objetos
heredan comportamiento dentro de una jerarquía
de clases.
Polimorfismo - Propiedad de una operación
mediante la cual puede ser aplicada a distintos
tipos de objetos.
Bases de datos documentales
Esta constituida por un conjunto de programas
que almacenan, recuperan y gestionan datos
de documentos o datos de algún modo
estructurados.
Este tipo de bases de datos constituyen
subcategorías dentro de las denominadas bases
de datos no SQL.

Bases de datos deductivas
Es un sistema de base de datos pero con la
diferencia de que permite hacer deducciones a
través de inferencias.
Se basa en reglas y hechos que son
almacenados en la base de datos.
Son también llamadas bases de datos lógicas.

Tipos de lenguaje

Lenguaje de definición de datos (DDL): es un
lenguaje proporcionado por el sistema de gestión
de base de datos que permite a los usuarios llevar a
cabo las tareas de definición de las estructuras que
almacenarán los datos así como de los
procedimientos o funciones que permitan
consultarlos.
El SGBD posee un compilador de DDL cuya función
consiste en procesar las sentencias del lenguaje
para identificar distintos elementos de los esquemas
y almacenar la descripción del esquema.
Existen cuatro operaciones básicas:
- CREATE (crear)
- ALTER (alterar)
- DROP ( soltar)
- TRUNCATE (truncar)
Una vez creados los esquemas de la base de datos, los usuarios
necesitan un lenguaje que les permita manipular los datos de la base de
datos: realizar consultas, inserciones, eliminaciones y modificaciones.
 Lenguaje de manipulación de datos (DML) :es un lenguaje
proporcionado por el sistema de gestión de base de datos que
permite a los usuarios llevar tareas de consulta o manipulación de los
datos.
- INSERT (insertar)
- UPDATE (actualización)
- DELETE (borrar)





Tipos de LMD
LMD procedural el usuario debe especificar todas las operaciones de
acceso a datos llamando a los procedimientos para obtener la
información.
Estos lenguajes acceden a un registro, lo procesan y basándose en los
resultados obtenidos, acceden a otro registro, que también deben
procesar; hasta que se obtienen los datos deseados.
Las bases de datos jerárquicas y de red utilizan LMD procedurales.
LMD no procedural se puede utilizar para especificar operaciones
complejas sobre la base de datos de forma concisa.
Modelos de Datos
1. Modelo de Entidad- Relación

Un diagrama o modelo entidad-relación o
DER "Diagrama de Entidad Relación" es una
herramienta para el modelado de datos que
permite representar las entidades de un
sistema de información así como sus
interrelaciones y propiedades.
Entidad
 Representa una “cosa” u "objeto" del mundo real con
existencia independiente, es decir, se diferencia de otro
objeto o cosa, incluso siendo del mismo tipo, o una misma
entidad.
 Una entidad puede ser un objeto con existencia física o un
objeto con existencia conceptual. Una entidad está descrita
y se representa por sus características o atributos.
Atributos
 Los atributos son las características que definen o identifican
a una entidad. Los atributos son las propiedades que
describen a cada entidad en un conjunto de entidades.
Relación
 Describe cierta dependencia entre entidades o permite la
asociación de las mismas.
Conjunto de relaciones
 Consiste en una colección, o conjunto, de relaciones de la
misma naturaleza.
 La asociación entre los conjuntos de entidades es llamada
participación.
Restricciones






Correspondencia de cardinalidades
Un conjunto de relaciones en el que participan dos o más
conjuntos de entidades, la correspondencia de
cardinalidad indica el número de entidades con las que
puede estar relacionada una entidad dada.
Uno a Uno: (1:1) Un registro de una entidad A se relaciona
con solo un registro en una entidad B. (profesor y
departamento)
Uno a muchos: (1:N) Un registro en una entidad en A se
relaciona con cero o muchos registros en una entidad B.
Pero los registros de B solamente se relacionan con un
registro en A. (vendedor y ventas)
Muchos a Uno: (N:1) Una entidad en A se relaciona
exclusivamente con una entidad en B. Pero una entidad en
B se puede relacionar con 0 o muchas entidades en A
(empleado-centro de trabajo).
Muchos a muchos : (N:M) Una entidad en A se puede
relacionar con 0 o con muchas entidades en B y viceversa
(asociaciones-ciudadanos).
2. Modelo relacional


Una base de datos relacional es un conjunto de
una o más tablas estructuradas en registros
(líneas) y campos (columnas), que se vinculan
entre sí por un campo en común, en ambos casos
posee las mismas características como por
ejemplo el nombre de campo, tipo y longitud; a
este campo generalmente se le denomina ID,
identificador o clave.
A esta manera de construir bases de datos se le
denomina modelo relacional.
Clave primaria
 Es
una clave única elegida entre todas
las candidatas que define a todos los
demás atributos de la tabla, para
especificar los datos que serán
relacionados con las demás tablas. La
forma de hacer esto es por medio de
claves foráneas.
Clave foránea


Es una referencia a una clave en otra tabla,
determina la relación existente en dos tablas.
Las claves foráneas no necesitan ser claves
únicas en la tabla donde están y sí a donde
están referenciadas.
Por ejemplo, el código de departamento
puede ser una clave foránea en la tabla de
empleados. Se permite que haya varios
empleados en un mismo departamento, pero
habrá uno y sólo un departamento por cada
clave distinta de departamento en la tabla
de departamentos.
Clave índice
 Tienen
la necesidad de tener un acceso
más rápido a los datos. Pueden ser
creados con cualquier combinación de
campos de una tabla. Las consultas que
filtran registros por medio de estos
campos, pueden encontrar los registros
de forma no secuencial usando la clave
índice.
 Los índices generalmente no se
consideran parte de la base de datos,
pues son un detalle agregado.
Procedimientos almacenados
 Un
procedimiento almacenado es
código ejecutable que se asocia y se
almacena con la base de datos.
 Los procedimientos almacenados
recogen y personalizan operaciones
comunes, como: insertar un registro
dentro de una tabla, recopilar
información estadística, o encapsular
cálculos complejos.
Normalización de Datos


Las bases de datos relacionales pasan por un
proceso llamado «normalización de una base
de datos», es el proceso necesario para que
una base de datos sea utilizada de manera
óptima.
Entre las ventajas de este modelo están:



Garantiza herramientas para evitar la
duplicidad de registros, a través de campos
claves o llaves.
Garantiza la integridad referencial: Así al
eliminar un registro elimina todos los registros
relacionados dependientes.
Favorece la normalización por ser más
comprensible y aplicable.
ACCESS
 Microsoft
Access es una herramienta de
Microsoft para la definición y
manipulación de bases de datos.
Componentes de Base de
Datos en ACCESS

Tablas
Una tabla de una base de datos es similar en apariencia a una
hoja de cálculo, los datos se almacenan en filas y columnas.
Normalmente es fácil importar una hoja de cálculo en una tabla
de una base de datos.
La principal diferencia entre almacenar los datos en una hoja
de cálculo y hacerlo en una base de datos es la forma de
organizarse los datos. Para lograr la máxima flexibilidad para
una base de datos, la información tiene que estar organizada
en tablas, para que no haya redundancias.
Cada fila de una tabla se denomina “registro” y es donde se
almacena cada información individual. Cada registro consta de
campos. Los “campos” corresponden a las columnas de la
tabla y se deben configurar con un determinado tipo de datos,
ya sea texto, fecha, hora, numérico, o cualquier otro tipo.
Formulario
Los formularios se conocen a veces como "pantallas de
entrada de datos". Son las interfaces que se utilizan para
trabajar con los datos contienen botones de comando
que ejecutan diversos comandos.
Se puede crear una base de datos sin usar formularios,
editando los datos de las hojas de las tablas. Los usuarios
de bases de datos prefieren usar formularios para ver,
escribir y editar datos en las tablas.
 Informes
Los informes o “reportes”, sirven para resumir y presentar los
datos de las tablas.
Un informe se puede ejecutar en cualquier momento y
siempre reflejará los datos actualizados de la base de
datos.
Los informes suelen tener un formato que permita
imprimirlos, pero también se pueden consultar en la
pantalla, exportar a otro programa o enviar por correo
electrónico.

Consultas
Las consultas son las que hacen el trabajo en una base de
datos. Pueden realizar numerosas funciones diferentes.
Su función es recuperar datos específicos de las tablas.
Los datos que desea ver suelen estar distribuidos por varias
tablas y, con las consultas, puede verlos en una sola hoja
de datos. Además, no desea ver todos los registros a la vez,
las consultas le permiten agregar criterios para "filtrar" los
datos hasta obtener solo los registros que desee. Las
consultas sirven de origen de registros para formularios e
informes.
 Macros
Las macros en Access se pueden considerar como un
lenguaje de programación simplificado, que se puede
utilizar para aumentar la funcionalidad de la base de datos.
Las macros contienen acciones que realizan tareas, como
abrir un informe, ejecutar una consulta o cerrar la base de
datos. Casi todas las operaciones de bases de datos que se
realizan manualmente se pueden automatizar mediante
macros, ahorrando así mucho tiempo.

Módulos
Los módulos, como las macros, son objetos que sirven
para aumentar la funcionalidad de la base de datos.
Mientras que las macros en Access se crean
seleccionando acciones de una lista, los módulos se
escriben en el lenguaje de programación de Visual Basic
para Aplicaciones (VBA).
Un módulo es una colección de declaraciones,
instrucciones y procedimientos que se almacenan
conjuntamente como una unidad. Un módulo puede ser
de clase o estándar.



Los módulos de clase se adjuntan a formularios o
informes, y contienen procedimientos específicos del
formulario o el informe al que se adjunta.
Los módulos estándar contienen procedimientos
generales que no están asociados a ningún otro objeto.
Los módulos estándar se enumeran en Módulos en el
panel de exploración, pero los módulos de clase no.
Proyecto