20
Introducción a bases de datos relacionales oidorgonzalez

Curso Basico Bd 1

Embed Size (px)

Citation preview

Page 1: Curso Basico Bd 1

oidorgonzalez

Introducción a bases de datos relacionales

Page 2: Curso Basico Bd 1

oidorgonzalez

Objetivos• Entender el concepto de datos y base de datos.

• Comprender que es un sistema de gestión de base de datos.

• Conceptos y terminología asociados con bases de datos.

• Análisis, Diseño e implementación de bases de datos.

• SQL.

Page 3: Curso Basico Bd 1

Herramientas a usar

Oracle SQL Developer 3.1

Oracle Database 11g Express Edition

Page 4: Curso Basico Bd 1

oidorgonzalez

Datos

• Los datos pertenecen o describen algún objeto, evento o suceso de interés para una organización. Son cualquier hecho que necesita ser almacenado.

• Ejemplo: nombres y apellidos de empleados, nombres de dependencias, números telefónicos, etc.

Page 5: Curso Basico Bd 1

oidorgonzalez

Objetos

Objeto > Empleado

Posee propiedades (Atributos, Características)

NombresApellidosFecha de nacimientoLugar de trabajoSalario

Entidades Objetos de interés para una organización, imitan algo en el mundo real.

Page 6: Curso Basico Bd 1

oidorgonzalez

Base de datos• Repositorio centralizado donde se almacenan los datos.• Los objetos o entidades pueden o no estar relacionados entre si.

Empleados Cargos

Áreas de trabajo

Page 7: Curso Basico Bd 1

oidorgonzalez

Base de datos

Las bases de datos son útiles:

• Muchas aplicaciones informáticas manejan grandes cantidades de información.

• Sistemas de bases de datos ofrecen una serie de herramientas para almacenar, buscar y gestionar esta información.

• Las bases de datos son un "tema central" en la informática.

• Conceptos básicos y habilidades con sistemas de base de datos son parte del conjunto de herramientas que se supone debe tener un profesional en sistemas computacionales.

Page 8: Curso Basico Bd 1

oidorgonzalez

Archivos convencionales vs Bases de datos

Todos los sistemas de información permiten crear, leer, actualizar y eliminar datos. Estos datos se almacenan en archivos y bases de datos.

• Los archivos convencionales son colecciones de archivos similares.

• Las bases de datos son colecciones de archivos relacionados entre sí.

Los registros de cada archivo debe tener en cuenta las relaciones a los registros de otros archivos.

En el entorno de archivo, almacenamiento de datos se basa en las aplicaciones que van a utilizar los archivos.

En el entorno de base de datos, las aplicaciones se construyen alrededor de la base de datos integrada.

Page 9: Curso Basico Bd 1

oidorgonzalez

Archivos convencionales vs Bases de datos

Archivos convencionales

Ventajas: • Son relativamente fáciles de diseñar y poner en práctica, ya que se basan

normalmente en una única aplicación o sistema de información.• Históricamente, otra ventaja de los archivos convencionales ha sido la

velocidad de procesamiento.

Desventajas:• La duplicación de elementos de datos en varios archivos. normalmente se

cita como la principal desventaja de los sistemas basados en archivos.• Falta de flexibilidad y no escalabilidad.• Se puede crear incoherencias en los datos.• Cada archivo tiene un formato específico.

Page 10: Curso Basico Bd 1

oidorgonzalez

Archivos convencionales vs Bases de datos

Base de datosVentajas: • Capacidad de compartir los mismos datos a través de múltiples aplicaciones y

sistemas.• Almacenar los datos en formatos flexibles.• Permiten el uso de los datos en forma no especificada originalmente por los

usuarios finales - independencia de datos.• El ámbito de aplicación de base de datos se puede ampliar sin afectar a los

programas existentes que utilizan.• Nuevos campos y tipos de registro se pueden añadir a la base de datos sin afectar

a los programas actuales.• Los datos sólo se pueden acceder a través del DBMS y no directamente a través

del sistema operativo.• Concurrencia: Permite el acceso a los datos por diferentes usuarios al mismo

tiempo de forma mas fácil.

Page 11: Curso Basico Bd 1

oidorgonzalez

Archivos convencionales vs Bases de datos

Base de datosDesventajas: • La tecnología de base de datos es más compleja que la tecnología de

archivos.• Se requiere software especial, sistema de gestión de bases de datos (DBMS).• Tecnología de base de datos requiere una inversión importante.• El costo de las bases de datos en desarrollo es mayor porque los analistas y

programadores deben aprender a utilizar el DBMS.• Con el fin de lograr los beneficios de la tecnología de base de datos, los

analistas y especialistas de bases de datos deben cumplir con los principios de diseño rigurosos.

• Otro problema potencial con el enfoque de base de datos es el aumento de la vulnerabilidad inherente en el uso de los datos compartidos.

Page 12: Curso Basico Bd 1

oidorgonzalez

Archivos convencionales vs Bases de datos

Diseño de base de datos en perspectiva• Para aprovechar plenamente las ventajas de la tecnología de base de

datos, una base de datos debe ser diseñada cuidadosamente.• El producto final se denomina un esquema de base de datos, un plano

técnico de la base de datos.• El diseño de base de datos convierte los modelos de datos que se han

desarrollado para los usuarios del sistema durante la fase de definición, en estructuras de datos soportados por la tecnología de base de datos elegida.

• Con posterioridad al diseño de base de datos, los fabricantes de sistemas construirán las estructuras de datos utilizando el lenguaje y las herramientas de la tecnología de base de datos elegida.

Page 13: Curso Basico Bd 1

oidorgonzalez

Modelo de base de datos jerárquica

• Los datos se almacenan como una estructura de árbol y sólo se pueden recuperar mediante la navegación a través de la jerarquía.

• Un registro padre puede tener muchos hijos, pero un registro hijo puede tener sólo 1 registro primario.

• La navegación se logra a través del uso de punteros almacenados físicamente con cada registro.

• Bueno para el manejo de grandes volúmenes de datos que sólo necesita tener acceso utilizando rutas predefinidas.

• Al igual que los archivos y carpetas están organizados en sistemas de archivos.

Page 14: Curso Basico Bd 1

oidorgonzalez

Modelo de base de datos de red

• Los datos se considera como una red de registros y las relaciones entre estos registros.

• Los datos sólo se pueden acceder mediante la navegación a través de relaciones definidas.

• Punteros almacenados físicamente con cada registro.

Page 15: Curso Basico Bd 1

oidorgonzalez

Modelo de base de datos relacional

• Basado en la teoría de conjuntos, que se asegura de que los datos puedan ser recuperados de cualquier manera requerida por una aplicación.

• La información se almacena como tuplas o registros en las relaciones o tablas de 2 dimensiones.

• Los datos se relaciona a través de columnas comunes en tablas separadas.

Page 16: Curso Basico Bd 1

oidorgonzalez

Sistema de gestión de base de datos• Aplicación software que permite a los usuarios almacenar y manipular los

datos dentro de la base de datos.• Sistema de gestión de base de datos relacionales, los datos son

almacenados en forma de tablas.• Oracle, SQL Server, MySql, Postgres

Nombres Apellidos Cargo

CargoDescripción

Empleados

Cargos

SGBDR(RDBMS)

Page 17: Curso Basico Bd 1

oidorgonzalez

Sistema de gestión de base de datos

• Independencia de datos y acceso eficiente.

• Reducción del tiempo de desarrollo de aplicaciones.

• Integridad y seguridad de los datos.

• Uniformidad de los datos.

• Acceso concurrente.

• Recuperación de accidentes.

Page 18: Curso Basico Bd 1

oidorgonzalez

Sistema de gestión de base de datos

Nos provee el diccionario de datos.• El diccionario o catálogo almacena información sobre la propia base de

datos.• Se trata de datos acerca de los datos o 'metadatos‘.• Casi todos los aspectos del DBMS utiliza el diccionario.

El diccionario tiene• Descripciones de objetos de base de datos (tablas, usuarios, restricciones,

vistas, índices, etc.).• La información sobre quién está utilizando qué de datos.• Esquemas y usuarios.

Page 19: Curso Basico Bd 1

oidorgonzalez

SQL- Structured Query Language• Lenguaje de alto nivel utilizado para interactuar con bases de datos

relacionales.

• SQL es un lenguaje estándar que es compatible con todos los RDBMS.

• Hay algunas diferencias importantes entre las versiones de SQL utilizadas por los diferentes sistemas. Diferentes implementaciones de proveedores de RDBMS

• Las diferentes versiones de los estándares SQL (SQL92, SQL99, etc.)

Page 20: Curso Basico Bd 1

oidorgonzalez

SQL- Structured Query Language

Sublenguajes Sentencias

Definición (DDL) CREATE, ALTER, DROP

Recuperación (Algunos no consideran esta división)

SELECT

Manipulación (DML) INSERT, UPDATE, DELETE (SELECT)

Control de datos(DCL) GRANT, REVOKE

Control de transacciones (TCL) COMMIT, ROLLBACK

Comentarios -- Comenta la línea a la cual precede/* */ Comenta todo el texto encerrado