You are on page 1of 20

Bases de Datos

Introducción a MySQL

SQL
Strcture Query Languaje
(LENGUAJE ESTRUCCTURADO DE
CONSULTA)
ORACLE
Potente
Seguro
Fiable
SQL
Propietario Tiene dueño Requisita
Gestores hardware
de base
datos
MySQL
Software libre No tiene dueño
No
nesita
ACCESS mucho
hardware
No
DB2 ocupa
mucho
espacio
MySQL
Java MySQL
Apache

Servidor
lógica + Base de datos
Servidor de Base
Web Servidor de de Datos
aplicaciones

SERVIDOR DE Microsoft es : I.I.S “Internet Information Service


Aplicación de las bases de datos
Las bases de datos son ampliamente usadas. Las siguientes son algunas de sus aplicaciones más
representativas:

Banca. Para información de los clientes, cuentas y préstamos, y transacciones bancarias.

Líneas aéreas. Para reservas e información de planificación. Las líneas aéreas fueron de los
primeros en usar las bases de datos de forma distribuida geográficamente (los terminales situados
en todo el mundo accedían al sistema de bases de datos centralizado a través de las líneas
telefónicas y otras redes de datos).

Universidades. Para información de los estudiantes, matrículas de las asignaturas y cursos.

Transacciones de tarjetas de crédito. Para compras con tarjeta de crédito y generación mensual
de extractos.

Líneas aéreas. Para reservas e información de planificación. Las líneas aéreas fueron de los
primeros en usar las bases de datos de forma distribuida geográficamente (los terminales situados
en todo el mundo accedían al sistema de bases de datos centralizado a través de las líneas
telefónicas y otras redes de datos).

Telecomunicaciones. Para guardar un registro de las llamadas realizadas, generación mensual


de facturas, manteniendo el saldo de las tarjetas telefónicas de prepago y para almacenar
información sobre las redes de comunicaciones.
Aplicación de las bases de datos
Finanzas. Para almacenar información sobre grandes empresas, ventas y compras de
documentos formales financieros, como bolsa y bonos.

Ventas. Para información de clientes, productos y compras.

Producción. Para la gestión de la cadena de producción y para el seguimiento de la


producción de elementos en las factorías, inventarios de elementos en almacenes y pedidos
de elementos.

Recursos humanos. Para información sobre los empleados, salarios, impuestos y


beneficios, y para la generación de las nóminas.

NOTA.
Como esta lista ilustra, las bases de datos forman una parte esencial de casi todas las
empresas actuales.
Bases de datos. Concepto
• Una base de datos en su definición mas sencilla, es una colección
de archivos relacionados.

• De manera mas técnica, una base de datos es un conjunto de


varios tipos de datos organizados e interrelacionados.

• A manera de teoría de conjuntos, es un conjunto de datos de


diferentes ámbitos, organizados sistemáticamente, es decir, siguen
ciertas reglas.
Definición de Manejador de bases de
datos.
Un manejador de base de datos, conocido con las siglas SGBD – Sistema Gestor de Base de Datos o
en ingles DBMS – Database Manager System, es un software que actúa como interfaz entre los
datos almacenados en forma binaria en una base de datos y el usuario que desea manejar tales
datos.
El usuario inicia una
operación sobre los
Usuario datos
El SGBD Localiza los
datos en el sistema.

El SGBD regresa el
resultado de la
operación al usuario.
El SGBD opera
sobre los datos
SQL. Lenguaje de base de datos
SQL. Es el lenguaje estándar para el manejo de base de datos. SQL - Structured
Query Language.

SQL se divide en dos Sub-lenguajes.

DDL (Data Definition Language). Lenguaje para la definición de objetos de


la base de datos. Agrupa a las operaciones CREATE DATABASE,
CREATE TABLE, CREATE INDEX ETC…

DML (Data Manipulation Language). Lenguaje para la manipulación de


datos agrupa a las operaciones SELECT, INSERT, UPDATE y DELETE.
Objetos de una base de datos.
Las bases de datos están compuestas básicamente por 6 objetos: Tablas, Vistas,
Funciones, Índices, Procedimientos almacenados y Trigger
Objetos tablas.
Las tablas son los objetos principal de una base de datos, pues son la estructura Física
donde se almacenan los datos. Las tablas contienen registros los cuales contienen
campos.
Columnas = Campos

Filas = Registros

TABLA
Introducción a SQL
Definiendo Objetos de una base de datos
(DDL)
Creación de bases de datos
Sentencia CREATE DATABASE.
Esta sentencia crea una base de datos.

Sintaxis
CREATE DATABASE NOMBRE_BASE

Ejemplos: crear una base llamada “BasePrueba”:


CREATE DATABASE BasePrueba

Crear una base de datos llamada Base2


CREATE DATABASE Base2

Crear una base de datos llamada “Base_Tres”


CREATE DATABASE BaseTres

Importante.
Los nombres de las base de datos y así como también los nombre de las tablas de la
base de datos no deben contener espacios en blanco.
Crear tablas.
Sentencia CREATE TABLE. Construye una tabla
Sintaxis
CREATE TABLE nombreDeTabla (
Campo1 tipo de dato ,
Campo2 Tipo de dato,
Campo2 Tipo de dato,…
)

Ejemplo:
CREATE TABLE TABLA1 (
Campo1 int,
Campo2 int,
Campo3 char(3)
)

CREATE TABLE Proveedores (


ClaveProveedor int,
Nombre char(40)
)
Modelo de las bases de datos
Para que el sistema sea útil debe recuperar datos de forma eficiente. Tal preocupación ha conducido que
se realicen tareas de Análisis y Diseño de una base de datos. Esta tareas son complementarias, es decir
una depende de la otra. Dichas tareas se realizan en la secuencia siguiente:

Análisis. En este fase, se realiza una entrevista (en el mejor de los casos una serie de entrevistas) con
la persona o grupo de personas que requiere la aplicación de base de datos, esto con el fin de que se
defina cual es el objetivo de la base de datos, es decir, se destacan factores como:
•Sección (es) del negocios estan involucradas.
•Cantidad de información.
•Nivel de detalle requerido para la información almacenada.
•Reportes se van a proveer con la base de datos, etc…

Diseño. Con la información obtenida en la fase anterior se inicia un proceso de diagramación de las
estructuras donde se almacenara la información.

El resultado de estas dos fases es un diagrama que expresa las estructura de la


base de datos. A este diagrama se le llama el Modelo Entidad – Relación.
Modelo de las bases de datos
El objetivo principal de un modelo de bases de datos es proporcionar una herramienta
que sirva como referencia tanto al personal especializado en bases de datos, como a los
usuarios finales, estos últimos tal vez no estén muy familiarizados con los sistema de
computo y bases de datos.

Un modelo de base de datos se puede llevar a detalle según lo requiera el personal que lo
interpreta. Por ejemplo:

DBA (Administrador de la base de datos). Necesita conocer, a partir del modelo,


nombre de la tabla, campos en la tabla, tipos de datos de cada tabla, claves primarias,
relaciones entre tablas, campos con posibilidad de dato vació, etc.

Un desarrollador de reportes solo necesita conocer nombre de tabla, campos en la tabla


y el objetivo de cada tabla.

Personal como un gerente, un director, la (el) asistente de la dirección o gerencia no


necesitan mas que los reportes, es decir, información impresa de manera clara para toma
de decisiones.
Niveles de abstracción del modelo de las
bases de datos
Nivel alto de abstracción.
Muestra la información Usuarios de Reportes.
organizada y presentable.

Nivel medio de abstracción,


muestra información de la Desarrolladores de reportes,
base de datos, tal como,
nombres de tablas y columnas
y la relación entre tablas.

Nivel bajo de abstracción.


Modelo de la base totalmente DBA, Desarrolladores
detallado
Ejemplo: Modelado
Requisito.
Se necesita guardar información de los alumnos de una institución educativa. Nos solicitan que mediante
la información guardada, se pueda recuperar datos de los alumnos tal como: Nombre, matricula,
dirección, teléfono y fecha de nacimiento.
A continuación se simula una sesión de análisis para este requerimiento:
Analista/desarrollador. ¿Cómo realizas tus búsquedas generalmente por nombre o por apellidos?

Usuario. Son mas comunes las búsquedas por apellido, aunque a veces se hacen búsquedas por
nombre.
Analista/desarrollador. El valor para tus matriculas se forma a partir de números, letras o numero y
letras.
Usuario. Solo números
Analista/desarrollador. ¿Cómo determinas estas matriculas siguen un patrón o formato?
Usuario. Pues inician con el año de inscripción y termina con 4 numeros

Analista/desarrollador. ¿Los cuatro ultimos numeros son aleatoiros o consecutivos?, es decir, ¿los
asignas según se van inscribiendo los alumnos (1,2, 3, etc…) o los asignas bajo otro criterio?
Usuario. Son consecutivo, en este momento estamos con el alumno 721.
Analista/desarrollador. ¿El telefono es obligatorio?
Usuario. Si.
Ejemplo: Modelado
De la primera respuesta del usuario, el analista decide que para el nombre del alumno lo mejor será
que exista un campo nombre y un campo apellido.

De la segunda respuesta de usuario, el analista decide que existirá un campo matricula de tipo
numérico.
De la tercera y cuarta respuesta del usuario, el analista decide que el campo matricula puede ser auto
- numérico, con valor inicial en yyyy0001.

De la ultima respuesta del usuario, se determina que el campo para el teléfono, siempre debe recibir un
dato.

Todo lo anterior se planea almacenarlo en una tabla de una base de datos. Por lo tanto necesitamos un
diagrama que describa la tabla.
Figura para modelar una tabla.
Figura para modelar una tabla.
Modelo Físico
Modelo Lógico
Ejemplo: Modelado
El modelo para la tabla del ejemplo es el siguiente:

Tabla Alumnos Tabla Alumnos


Modelo Lógico Modelo Físico

Alumnos Alumnos
Matricula Matricula: int
Pasamos del
Nombre modelo lógico al
Nombre: char(20)
modelo Físico
Apellidos Apellidos: varchar(50)
Fecha_Nac Fecha_Nac: datetime
Telefono Telefono: char(18)
Direccion Direccion: text
Implementación del modelo
Alumnos
Matricula: int
Nombre: char(20)
Apellidos: varchar(50)
Fecha_Nac: datetime
Telefono: char(18)
Direccion: text
CREATE TABLE Alumnos (

Matricula INT,

Nombre VARCHAR (20),

Apellidos VARCHAR(50),

Fecha_Nac DATE,
Telefono CHAR (18),
Direccion TEXT
)