Download Tablas - swrecursos

Document related concepts

Base de datos relacional wikipedia , lookup

Clave primaria wikipedia , lookup

Modelo relacional wikipedia , lookup

SQL wikipedia , lookup

Modelo de base de datos wikipedia , lookup

Transcript
Bases de Datos
Conceptos de Bases de Datos
Diferente Almacenamiento
SALGRADE
GRADE
LOSAL
HISAL
--------- --------- --------1
700
1200
DEPTNO DNAME
LOC
2
1201
1400
--------- -------------- ---------3
1401
2000
10 ACCOUNTING
NEW YORK
4
2001
3000
20 RESEARCH
DALLAS
5
3001
9999
30 SALES
CHICAGO
40 OPERATIONS
BOSTON
DEPT
Base de
datos
Hoja de
cálculo
Archivado en
gabinete
¿Qué es una Base de Datos?
• Una Base de Datos no es más que un conjunto de
información (un conjunto de datos) relacionada
que se encuentra agrupada o estructurada.
• Es un sistema formado por un conjunto de datos
almacenados en memorias masivas que permiten
acceso directo a ellos y un conjunto de programas
que manipulan ese conjunto de datos.
Base de Datos
• Es un conjunto exhaustivo de datos
estructurados, fiables y homogéneos,
organizados independientemente de su
utilización y de su implementación en
computadora, accesibles en tiempo real,
compartibles por usuarios concurrentes que
tienen necesidades de información
diferentes y no predecibles en el tiempo.
Modelos de Datos
Modelo del
sistema en la
mente de los
clientes
Modelo de entidad
del modelo del
cliente
Modelo de tablas
del modelo de
entidad
Servidor
Tablas en disco
DBMS
• Entre la Base de Datos física (el almacenamiento real
de los datos) y los usuarios del sistema existe un
interfaz de software que recibe el nombre de DBMS y
es el responsable de tratar todas las peticiones de
información de los usuarios.
• Un DBMS es un conjunto de programas que permite
controlar el acceso y la utilización de la Base de Datos,
por los usuarios, para incluir, modificar o recuperar
información, incluyendo funciones para permitir la
independencia, la integridad y la seguridad de los
datos, así como la concurrencia de usuarios.
Sistema de Base de Datos
Servidor
Tablas de
usuario
Diccionario
de datos
Concepto de base de datos relacional
–El Dr. E. F. Codd propuso el modelo
relacional para sistemas de base de datos
en 1970.
–Es la base para el “relational database
management system” (RDBMS).
Bases de Datos Relacionales
• Los sistemas relacionales operan
conceptualmente sobre archivos o Tablas
de datos y no sobre los datos individuales
contenidos en el archivo.
• Las tablas permiten representar la
información de forma mas compacta.
• Es posible acceder a la información
contenida en dos o mas tablas
simultáneamente.
Definición de RDBMS
•Una base de datos relacional es una colección de
relaciones o tablas bidimensionales.
Database
Nombre de Tabla : EMP
EMPNO
7839
7698
ENAME
KING
BLAKE
JOB
PRESIDENT
MANAGER
7782
7566
CLARK
JONES
MANAGER
MANAGER
Nombre de Tabla: DEPT
DEPTNO
10
30
DEPTNO
10
20
DNAME
ACCOUNTING
RESEARCH
LOC
NEW YORK
DALLAS
10
20
30
40
SALES
OPERATIONS
CHICAGO
BOSTON
Propiedades de los RDBMS
•Una base de datos relacional:
– Puede ser accedida y modificada ejecutando
instrucciones del lenguaje estructurado de
consultas – “structured query language” (SQL)
– Contiene una colección de tablas sin
apuntadores físicos
– Utiliza un conjunto de operadores
El lenguaje SQL
• SQL: Structured Query Language.
• Cualquier DBMS lleva asociado un
lenguaje de manipulación de datos
compuesto de una serie de comandos u
órdenes que permiten interrogar y modificar
la Base de Datos.
Comunicación con un DBMS
utilizando SQL
La sentencia de SQL
es introducida
SQL> SELECT loc
2 FROM
dept;
La sentencia de SQL
es enviada al RDBMS
Database
Los datos son
desplegados
LOC
------------NEW YORK
DALLAS
CHICAGO
BOSTON
BD Relacional
•
•
•
Tabla = filas y columnas
Fila = registro = entrada en la tabla
Columna = Campo de datos
Campo 1
Campo 2
Campo 3
Campo 4
Propiedades de los datos
• Estructurados independientemente de las
aplicaciones y del soporte de almacenamiento que
los contiene.
• Presentan la menor redundancia posible.
• Son compartidos por varios usuarios y/o
aplicaciones.
• Están bajo un control centralizado.
Tipos de datos
Alfabético
Alfanúmerico
{A…Z} + {a…z} +
{caracteres especiales}
{A…Z} + {a…z} + {0..9}+
{caracteres especiales}
Numérico
{0..9} + { . } + {0..9}
Fechas
Cualquier fecha valida del
calendario
Tipos de datos
Carácter
Nombres
Numérico entero 1,200
Numérico
decimal
Fecha
45127.25633
Booleano
Verdadero - Falso
01-marzo-2004
Características de las Tablas
• Una tabla está formada por Filas y Columnas.
• Las Filas son equivalentes a los Registros de
un archivo clásico (contienen los valores de los
objetos o entidades descritas).
• Las Columnas son equivalentes a los Campos
(que representan los atributos de los objetos o
entidades descritas). El conjunto de valores que
puede tomar un campo se llama dominio.
Ejemplo de Tabla
Clave
Primaria
#
Nombre
Apellido
Teléfono
2341167
Pedro
Alonso
6273652
Nombre
Campos
Registro
5625711
María
Gómez
6718234
Registro
6718273
José
López
6715629
Registro
Campo
Campo
Campo
Campo
Terminología de BD
2
3
EMPNO ENAME
JOB
4
MGR
HIREDATE
SAL
COMM DEPTNO
6
------------- ------------ --------------------- -------- ---------------- ----------- --------------
1
7839 KING
PRESIDENT
7698 BLAKE
MANAGER
7782 CLARK
-----------
17-NOV-81
5000
10
7839
01-MAY-81
2850
30
MANAGER
7839
09-JUN-81
2450
10
7566 JONES
MANAGER
7839
02-APR-81
2975
20
7654 MARTIN
SALESMAN
7698
28-SEP-81
1250
1400
30
7499 ALLEN
SALESMAN
7698
20-FEB-81
1600
300
30
7844 TURNER SALESMAN
7698
08-SEP-81
1500
0
30
7900 JAMES
CLERK
7698
03-DEC-81
950
7521 WARD
SALESMAN
7698
22-FEB-81
1250
7902 FORD
ANALYST
7566
03-DEC-81
3000
20
7369
SMITH
CLERK
7902
17-DEC-80
800
20
7788
SCOTT
ANALYST
7566
09-DEC-82
3000
20
7876
ADAMS
CLERK
7788
12-JAN-83
1100
20
7934
MILLER
CLERK
7782
23-JAN-82
1300
10
5
30
500
30
Relacionando múltiples tablas
• Cada fila de datos en una tabla es identificada en
forma única por la llave primaria (PK).
• Se pueden relacionar datos lógicamente de
múltiples tablas utilizando llaves foráneas (FK).
Nombre de Tabla: EMP
EMPNO
7839
7698
7782
7566
ENAME
KING
BLAKE
CLARK
JONES
Llave primaria
JOB
PRESIDENT
MANAGER
MANAGER
MANAGER
Nombre de Tabla : DEPT
DEPTNO
10
30
10
20
Llave foránea
DEPTNO
10
20
30
40
DNAME
ACCOUNTING
RESEARCH
SALES
OPERATIONS
Llave primaria
LOC
NEW YORK
DALLAS
CHICAGO
BOSTON
El concepto: LLAVE
• Una clave es una referencia que se utiliza para
identificar los registros de forma única y está
formada por uno o mas atributos (columnas)
de los registros.
• La Llave Primaria o principal es la que es
mínima en cuanto al número de campos que la
componen.
La Llave Primaria
• Es importante porque permite acceder a
cada uno de los elementos de la Base de
Datos por direccionamiento asociativo
mediante la combinación de tres factores:
– El nombre de la Tabla.
– La columna.
– El valor de la llave.
Leyes básicas de los DBMS
• La Base de Datos contendrá generalmente muchas
Tablas.
• Una Tabla sólo contiene un número fijo de Campos.
• El nombre de los Campos que componen una Tabla
es distinto.
• Cada Registro de una Tabla es único.
• El orden de los Registros y el orden de los Campos
de una Tabla no está determinado.
• Para cada Campo existe un conjunto de valores
posibles (Dominio).
Diseño de B de D Relacionales I
• Planificación del tipo de información a
almacenar:
– Información disponible.
– Información que necesitamos.
• Esquematizar sobre papel el problema.
• Considerar los datos a gestionar y estimar el
espacio de memoria que necesitan.
Diseño de B de D Relacionales II
• Los dos aspectos mas importantes a la hora
del diseño de las Tablas son:
– Campos
• Nombre del campo
• Tipo del campo
• Anchura del campo
– Datos
• Caracteres (texto), valores numéricos, fechas,
informaciones lógicas, imágenes, multimedia.
Fases del diseño de una B de D
• Definición de los datos (análisis de los datos
existentes).
• Refinamiento de los datos (depuración de
los datos necesarios).
• Establecer relaciones entre los campos.
Definición de los datos
• Lista en papel de todos los atributos
(Campos).
• Examinar la aplicación con detalle para
determinar exactamente la clase de
información que debe almacenarse en la
Base de Datos.
Definición de datos (ejemplo)
• Gestión del ingreso de pacientes en un hospital.
–
–
–
–
–
–
–
–
Nombre del paciente
Apellidos del paciente
Dirección del paciente
Número de teléfono
Fecha de ingreso
Procedencia (con o sin seguro)
Destino del paciente
Observaciones
Refinamiento de los datos
• Refinar la lista inicial de campos de modo
que los campos constituyan una descripción
precisa de los tipos de datos necesarios.
• Importante incluir las sugerencias de los
futuros usuarios de la Base de Datos.
Refinamiento de los datos (ejem 1)
•
•
•
•
•
•
•
•
•
Nombre del paciente
Apellidos del paciente
Domicilio
Población
Provincia
Código postal
Número de teléfono
Procedencia
Fecha de ingreso
•
•
•
•
•
•
Nombre del hospital
Médico responsable
Número de planta
Número de cama
Número de historial clínico
Observaciones
Refinamiento de los datos (ejem 2)
•
•
•
•
•
•
•
•
•
•
Nombre del paciente
Apellidos del paciente
Domicilio
Población
Provincia
Código postal
Número de teléfono
Procedencia
Fecha de ingreso
Nombre del hospital
•
•
•
•
•
•
•
•
•
•
Médico responsable
Nombre del médico
Apellidos del médico
Especialidad
Número de colegiado
Cargo
Número de planta
Número de cama
Número de historial clínico
Observaciones
Consideración de las relaciones
• Inspeccionar los Campos de la Tabla para
localizar redundancias en los datos a
introducir.
• Esta estrategia nos permitirá determinar si
es conveniente o no utilizar varias Tablas y,
en su caso, la forma de establecer las
relaciones futuras entre los campo.
Relaciones (ejemplo 1)
• Cada vez que se dé de alta a un paciente hay
que complementar los datos del médico,
pudiéndose ser el mismo médico para
diversos paciente.
• Por ello conviene separar los datos en dos
Tablas:
– Pacientes
– Médicos
Relaciones (ejemplo 2)
• Tabla Pacientes
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Número SS paciente
Nombre del paciente
Apellidos del paciente
Domicilio
Población
Provincia
Código postal
Número de Teléfono
Procedencia
Fecha de ingreso
Código del médico responsable
Número de planta
Número de cama
Número de historial clínico
Observaciones
• Tabla médicos
–
–
–
–
–
–
–
Código del médico responsable
Nombre
Apellidos
Especialidad
Número de colegiado
Cargo
Observaciones
Relaciones (ejemplo 3)
• Se ha añadido un código de identificación
del médico responsable, presente en ambas
Tablas.
• Se ha añadido el Número de IMSS para
identificar de forma única a cada paciente.
• Observando la Tabla pacientes se ve que
esta se puede descomponer en:
– Tabla Pacientes (datos de identificación)
– Tabla Ingresos
Relaciones (ejemplo 4)
• Tabla pacientes
–
–
–
–
–
–
–
–
–
Número de IMSS
Nombre del paciente
Domicilio
Población
Provincia
Código postal
Número de teléfono
Número de historial clínico
Observaciones
• Tabla ingresos
–
–
–
–
Número de historial clínico
Procedencia
Fecha de ingreso
Código de identificación
del médico responsable
– Número de planta
– Número de cama
– Observaciones
Relaciones (ejemplo 5)
• Tabla médicos
– Código de identificación
del médico
– Nombre
– Apellidos
– Especialidad
– Número de colegiado
– Cargo
– Observaciones