Está en la página 1de 110

Informtica

21 Clase. Base de Datos


Prof. Gonzalo Mller
gmullerb@mail.com

Facultad de Ingeniera Universidad Central de Venezuela

Base Datos
Hay muchas formas de almacenar la informacin

Informtica Prof. Gonzalo Mller Clase 21 GM - 2

Base Datos
Base de Datos es una coleccin de informacin ordenada y digital

Excelente

Informtica Prof. Gonzalo Mller Clase 21 GM - 3

Base Datos
Base de Datos es una coleccin de informacin ordenada y digital Ordenada y Digital Rpida Ordenada y Digital Gran Cantidad de Informacin

Informtica Prof. Gonzalo Mller Clase 21 GM - 4

Base Datos
Base de Datos es una coleccin de informacin ordenada y digital Ordenada y Digital Rpida Ordenada y Digital Gran Cantidad de Informacin Ordenada en Tablas

Informtica Prof. Gonzalo Mller Clase 21 GM - 5

Base Datos
Base de Datos es una coleccin de informacin ordenada y digital

Base de Datos

Ordenada en Tablas

Informtica Prof. Gonzalo Mller Clase 21 GM - 6

Base Datos
Por conveccin se representa una Base de Datos, como un cilindro con su nombre en el medio:

Nombre

Informtica Prof. Gonzalo Mller Clase 21 GM - 7

Base Datos
La Base de Datos est conformado por un conjunto de Tablas:
Tabla Base de Datos Tabla
. . .

Tabla
Informtica Prof. Gonzalo Mller Clase 21 GM - 8

Tablas
Cada tabla est compuesta por sus Metadatos y sus Datos:
Tabla Metadatos

Datos

Informtica Prof. Gonzalo Mller Clase 21 GM - 9

Metadatos
Los Metadatos describen la estructura de los datos Define cuales y como deben ser los datos que puede contener la tabla A travs de una lista con los nombre de cada dato a ser almacenado en la tabla
NOMBRE
campo1 campo2 campo3 campoN
Informtica Prof. Gonzalo Mller Clase 21 GM - 10

Metadatos
Los Metadatos describen la estructura de los datos Define cuales y como deben ser los datos que puede contener la tabla Indicando el tipo de dato de cada uno de los elementos que conforman la tabla
NOMBRE
campo1 campo2 campo3 campoN
Informtica Prof. Gonzalo Mller Clase 21 GM - 11

Metadatos
Tipos de Datos: Numricos:
Entero:
Sin Signo: 1, 2, 4 y 8 bytes. Con Signo: 1, 2, 4 y 8 bytes.
NOMBRE
campo1 campo2 campo3 campoN

Real:
4 bytes. 8 bytes.

Lgicos. Carcter. String.


Informtica Prof. Gonzalo Mller Clase 21 GM - 12

Metadatos
Tipos de Datos: Numricos:
Entero:
Sin Signo: 1, 2, 4 y 8 bytes. Con Signo: 1, 2, 4 y 8 bytes.
NOMBRE
campo1 : tipo1 campo2 : tipo2 campo3 : tipo3 campoN : tipoN

Real:
4 bytes. 8 bytes.

Lgicos. Carcter. String.


Informtica Prof. Gonzalo Mller Clase 21 GM - 13

Metadatos
Los Tipos de Datos restringen los datos a ser ingresados: Establecen forma Establecen lmites
Tringulos en este rango

Los Metadatos Mantienen el orden


Informtica Prof. Gonzalo Mller Clase 21 GM - 14

Metadatos
Los Tipos de Datos restringen los datos a ser ingresados: Establecen forma Establecen lmites
El campo1 es un String

El campo1 debe ser de al menos 10 caracteres

Los Metadatos Mantienen el orden


Informtica Prof. Gonzalo Mller Clase 21 GM - 15

Metadatos
Los Tipos de Datos restringen los datos a ser ingresados: Establecen forma Establecen lmites
El campo1 es un String El campo2 es un Entero El campo1 debe ser de al menos 10 caracteres El campo2 debe estar entre 5 y 25

Los Metadatos Mantienen el orden


Informtica Prof. Gonzalo Mller Clase 21 GM - 16

Metadatos

Los Metadatos son similares a las estructuras, es decir, definen un esqueleto para una unidad de dato a ser almacenada

Los Metadatos son los que define una tabla

Informtica Prof. Gonzalo Mller Clase 21 GM - 17

Base de Datos - Estructura

Base de Datos Tablas Metadatos Campos

Datos

Informtica Prof. Gonzalo Mller Clase 21 GM - 18

Base de Datos - Estructura

Base de Datos Tablas Metadatos Campos

Tablas Vacas
Informtica Prof. Gonzalo Mller Clase 21 GM - 19

Base de Datos - Estructura


Tabla Base de Datos Datos Tabla
. . .

Metadatos

Metadatos Datos Metadatos Datos

Cada Tabla tiene sus Metadatos

Tabla

Informtica Prof. Gonzalo Mller Clase 21 GM - 20

Tablas
NOMBRE
campo1 : tipo1 campo2 : tipo2 campo3 : tipo3 campoN : tipoN

Metadatos

Informtica Prof. Gonzalo Mller Clase 21 GM - 21

Tablas
NOMBRE
campo1 : tipo1 campo2 : tipo2 campo3 : tipo3 campoN : tipoN

Metadatos

Informtica Prof. Gonzalo Mller Clase 21 GM - 22

Tablas
NOMBRE
campo1 : tipo1 campo2 : tipo2 campo3 : tipo3 campoN : tipoN
campo1 campo2 campo3 campoN

Metadatos

Informtica Prof. Gonzalo Mller Clase 21 GM - 23

Tablas
NOMBRE
campo1 : tipo1 campo2 : tipo2 campo3 : tipo3 campoN : tipoN
campo1 dato1 campo2 campo3 campoN

Metadatos

Informtica Prof. Gonzalo Mller Clase 21 GM - 24

Tablas
NOMBRE
campo1 : tipo1 campo2 : tipo2 campo3 : tipo3 campoN : tipoN
campo1 dato1 valor1 campo2 valor2 campo3 valor3 campoN valorN

Metadatos

Informtica Prof. Gonzalo Mller Clase 21 GM - 25

Tablas
NOMBRE
campo1 : tipo1 campo2 : tipo2 campo3 : tipo3 campoN : tipoN
campo1 campo2 campo3 campoN

Metadatos

Informtica Prof. Gonzalo Mller Clase 21 GM - 26

Tablas

Metadatos

Datos

Informtica Prof. Gonzalo Mller Clase 21 GM - 27

Tablas

campo1 dato1 dato2 dato3 dato4 datoM

campo2

campoN

A cada dato se le conoce como registro


Informtica Prof. Gonzalo Mller Clase 21 GM - 28

Tablas
Cada Registro posee su propio valor en cada campo de la tabla
campo1 Registro1 valor11 campo2 valor12 campoN valor1N

Registro4

valor41

valor42

valor4N

Informtica Prof. Gonzalo Mller Clase 21 GM - 29

Modelos de Base de Datos

Informtica Prof. Gonzalo Mller Clase 21 GM - 30

Modelo de Base de Datos


Es el esqueleto que define como debe ser almacenada la informacin en la Base de Datos Busca mejorar la eficiencia en el acceso y actualizacin de la Base de Datos.

Informtica Prof. Gonzalo Mller Clase 21 GM - 31

Modelo de Base de Datos


Sistema de Archivos La base de datos se almacena en archivos de texto planos No hay estructura Se realiza la bsqueda a travs de archivos. El programador de crear las rutinas para el manejo de las Base de Datos

Informtica Prof. Gonzalo Mller Clase 21 GM - 32

Modelo de Base de Datos


Jerrquico
Sistema de Archivos Jerrquico

Introduce el concepto de tablas. Define una estructura de tablas jerrquica en forma de rbol
Tabla1

Tabla11

Tabla12

Tabla111

Tabla112

Tabla121

Informtica Prof. Gonzalo Mller Clase 21 GM - 33

Modelo de Base de Datos

Jerrquico

Cada Tabla Hijo tiene una Tabla Padre

Padre
Tabla1

Hijo

Tabla11

Tabla12

Tabla111

Tabla112

Tabla121

Informtica Prof. Gonzalo Mller Clase 21 GM - 34

Modelo de Base de Datos

Jerrquico

Cada Tabla Hijo tiene una Tabla Padre La Tablas Hijo es completamente dependiente de la Tabla Padre

Tabla1

Padre
Tabla11 Tabla12

Tabla111

Tabla112

Tabla121

Hijo
Informtica Prof. Gonzalo Mller Clase 21 GM - 35

Modelo de Base de Datos

Jerrquico

Una Tabla Padre puede tener muchas Tablas Hijo.

Tabla1

Padre

Hijo

Tabla11

Tabla12 Hijo

Tabla111

Tabla112

Tabla121

Informtica Prof. Gonzalo Mller Clase 21 GM - 36

Modelo de Base de Datos

Jerrquico

Una Tabla Padre puede tener muchas Tablas Hijo. Un Registro puede existir en la Tabla Hijo slo si existe un Registro Asociado en la Tabla Padre

Tabla1

Tabla11

Tabla12

Tabla111

Tabla112

Tabla121

Informtica Prof. Gonzalo Mller Clase 21 GM - 37

Modelo de Base de Datos


Ejemplo:

Jerrquico
Alumnos

Alumnos
C.I. 1234 2584 Nombre Mara Jos

Correos

Actividades

Actividades
C.I. Texto Hola Com 2584 1234 2584
Informtica Prof. Gonzalo Mller Clase 21 GM - 38

Correos
C.I. 1234 1234

Tarea Nadar 1h Ejercicio2 Dieta A

Modelo de Base de Datos


Ejemplo:

Jerrquico
Alumnos

Alumnos
C.I. 1234 2584 Nombre Mara Jos

Correos

Actividades

Debe estar en el padre Actividades


C.I. Tarea Nadar 1h Ejercicio2 Dieta A

Correos
C.I. 1234 1234 Texto Hola Com

2584 1234 2584


Informtica Prof. Gonzalo Mller Clase 21 GM - 39

Modelo de Base de Datos


Ejemplo:

Jerrquico
Alumnos

Alumnos
C.I. 1234 2584 Nombre Mara Jos

Correos

Actividades

Debe estar en el padre Actividades


C.I. Tarea Nadar 1h Ejercicio2 Dieta A 2584 1234 2584
Informtica Prof. Gonzalo Mller Clase 21 GM - 40

Correos
C.I. 1234 1234 Texto Hola Com

Modelo de Base de Datos

Jerrquico

La bsqueda de un registro especfico se realiza siempre a travs del padre

Tabla1

Tabla11

Tabla12

Tabla111

Tabla112

Tabla121

Informtica Prof. Gonzalo Mller Clase 21 GM - 41

Modelo de Base de Datos


Red
Sistema de Archivos Jerrquico Red

Permite a las Tablas Hijo tener varias Tablas Padre.

Tabla1

Tabla11

Tabla12

Tabla111

Tabla112

Tabla121

Informtica Prof. Gonzalo Mller Clase 21 GM - 42

Modelo de Base de Datos


Red
Sistema de Archivos Jerrquico Red

Permite a las Tablas Hijo tener varias Tablas Padre.

Tabla1

Padre
Tabla11 Tabla12

Padre

Tabla111

Tabla112

Tabla121

Hijo
Informtica Prof. Gonzalo Mller Clase 21 GM - 43

Modelo de Base de Datos


Ejemplo:

Red
Ctedras Alumnos

Alumnos
C.I. 1234 2584 Nombre Mara Jos

Materias

Ctedras
REF 54781 41523 41572 Nombre Matemticas Fsica Diseo

Materias
C.I. 1234 1234 Materia Clculo 8 Dibujo 3 REF 54781 41572

Informtica Prof. Gonzalo Mller Clase 21 GM - 44

Modelo de Base de Datos


Ejemplo:

Red
Ctedras Alumnos

Alumnos
C.I. 1234 2584 Nombre Mara Jos

Materias

Ctedras
REF 54781 41523 41572 Nombre Matemticas Fsica Diseo

Materias
C.I. 1234 1234 Materia Clculo 8 Dibujo 3 REF 54781 41572

Debe estar en el padre

Informtica Prof. Gonzalo Mller Clase 21 GM - 45

Modelo de Base de Datos

Red

Mantiene que la bsqueda de un registro especfico se realiza siempre a travs del padre

Tabla1

Tabla11

Tabla12

Tabla111

Tabla112

Tabla121

Informtica Prof. Gonzalo Mller Clase 21 GM - 46

Modelo de Base de Datos


Relacional
Sistema de Archivos Jerrquico Red Relacional

Permite que cualquier tabla pueda ser accedida para realizar la bsqueda

Tabla1

Tabla11

Tabla12

Tabla111

Tabla112

Tabla121

Informtica Prof. Gonzalo Mller Clase 21 GM - 47

Relaciones en Base de Datos

Informtica Prof. Gonzalo Mller Clase 21 GM - 48

Relaciones
Entre Tablas se establecen Relaciones: One-to-One One-to-Many Many-to-Many Realmente establecen como se relacionan los registros entre 2 tablas. Esta relacin se establece a travs de un campo comn a ambas
Informtica Prof. Gonzalo Mller Clase 21 GM - 49

Relaciones

One-to-One

Una Tabla Padre puede tener una Relacin One-toOne con una Tabla Hijo. Esta relacin indica que existe slo un registro de la Tabla Hijo asociado con un slo registro de la Tabla Padre Es la Relacin Ms Sencilla
Padre Hijo

Informtica Prof. Gonzalo Mller Clase 21 GM - 50

Relaciones
Ejemplo:

One-to-One
Alumnos

Alumnos
C.I. 1234 2584 Nombre Mara Jos

Datos

Relacin One-to-One

Datos
C.I. 3548 1234
Informtica Prof. Gonzalo Mller Clase 21 GM - 51

Edad 26 18

Gnero F F

Altura 140.5 175.5

Relaciones
Ejemplo:

One-to-One
Alumnos

Campo Relacional
Alumnos
C.I. 1234 2584 Nombre Mara Jos

Datos

Relacin One-to-One

Datos
C.I. 3548 1234
Informtica Prof. Gonzalo Mller Clase 21 GM - 52

Edad 26 18

Gnero F F

Altura 140.5 175.5

Relaciones

One-to-One

La Relacin One-to-One se representa con una lnea que une los campos relacionales:
1

o
1

Informtica Prof. Gonzalo Mller Clase 21 GM - 53

Relaciones

One-to-One

La Relacin One-to-One se representa con una lnea que une los campos relacionales:
1

o
1

Ejemplo:
Alumnos ci : entero sin signo de 8 bytes nombre : string[20] Datos ci : entero sin signo de 8 bytes edad : entero sin signo de 1 byte

Informtica Prof. Gonzalo Mller Clase 21 GM - 54

Relaciones

One-to-One

La Relacin One-to-One se representa con una lnea que une los campos relacionales:
1

o
1

Ejemplo:
Alumnos ci : entero sin signo de 8 bytes nombre : string[20] Datos

ci : entero sin signo de 8 bytes edad : entero sin signo de 1 byte

Informtica Prof. Gonzalo Mller Clase 21 GM - 55

Relaciones

One-to-One

La Relacin One-to-One se representa con una lnea que une los campos relacionales:
1

o
1

Ejemplo:
Alumnos

Campo Relacional
Datos

ci : entero sin signo de 8 bytes nombre : string[20]

ci : entero sin signo de 8 bytes edad : entero sin signo de 1 byte

Informtica Prof. Gonzalo Mller Clase 21 GM - 56

Relaciones

One-to-Many

Un registro de una Tabla Padre puede tener asociados muchos registros de una Tabla Hijo, esta relacin se conoce como One-to-Many. Surge del modelo jerrquico. Es la Relacin ms Comn.
Padre Hijo

Informtica Prof. Gonzalo Mller Clase 21 GM - 57

Relaciones
Ejemplo:

One-to-Many
Alumnos

Alumnos
C.I. 1234 2584 Nombre Mara Jos

Correos

Actividades

Relacin One-to-Many
Actividades
C.I. Tarea Nadar 1h Ejercicio2 Dieta A

Correos
C.I. 1234 1234 Texto Hola Com

2584 1234 2584


Informtica Prof. Gonzalo Mller Clase 21 GM - 58

Relaciones
Ejemplo:

One-to-Many
Alumnos

Campo Relacional
Alumnos
C.I. 1234 2584 Nombre Mara Jos Correos Actividades

Relacin One-to-Many
Actividades
C.I. Tarea Nadar 1h Ejercicio2 Dieta A

Correos
C.I. 1234 1234 Texto Hola Com

2584 1234 2584


Informtica Prof. Gonzalo Mller Clase 21 GM - 59

Relaciones
Ejemplo:

One-to-Many
Alumnos

Alumnos
C.I. 1234 2584 Nombre Mara Jos

Correos

Actividades

Relacin One-to-Many
Actividades
C.I. Tarea Nadar 1h Ejercicio2 Dieta A

Correos
C.I. 1234 1234 Texto Hola Com

2584 1234 2584


Informtica Prof. Gonzalo Mller Clase 21 GM - 60

Relaciones
Ejemplo:

One-to-Many
Alumnos

Campo Relacional
Alumnos
C.I. 1234 2584 Nombre Mara Jos Correos Actividades

Relacin One-to-Many
Actividades
C.I. Tarea Nadar 1h Ejercicio2 Dieta A

Correos
C.I. 1234 1234 Texto Hola Com

2584 1234 2584


Informtica Prof. Gonzalo Mller Clase 21 GM - 61

Relaciones

One-to-Many

La Relacin One-to-Many se representa con una lnea que une los campos relacionales:
1

Informtica Prof. Gonzalo Mller Clase 21 GM - 62

Relaciones

One-to-Many

La Relacin One-to-Many se representa con una lnea que une los campos relacionales:
1

Ejemplo:
Alumnos ci : entero sin signo de 8 bytes nombre : string[20] Correos ci : entero sin signo de 8 bytes texto : string[255]

Informtica Prof. Gonzalo Mller Clase 21 GM - 63

Relaciones

One-to-Many

La Relacin One-to-Many se representa con una lnea que une los campos relacionales:
1

Ejemplo:
Alumnos ci : entero sin signo de 8 bytes nombre : string[20] Correos

ci : entero sin signo de 8 bytes texto : string[255]

Informtica Prof. Gonzalo Mller Clase 21 GM - 64

Relaciones

One-to-Many

La Relacin One-to-Many se representa con una lnea que une los campos relacionales:
1

Ejemplo:
Alumnos

Campo Relacional
Correos

ci : entero sin signo de 8 bytes nombre : string[20]

ci : entero sin signo de 8 bytes texto : string[255]

Informtica Prof. Gonzalo Mller Clase 21 GM - 65

Relaciones

Many-to-Many

El modelo Red introduce una nueva relacin, la relacin Many-to-Many Esta relacin indica que existe varios registros de la Tabla Hijo asociados con varios registros de la Tabla Padre
Tabla1

Padre
Tabla11 Tabla12

Tabla111

Tabla112

Tabla121

Hijo
Informtica Prof. Gonzalo Mller Clase 21 GM - 66

Relaciones

Many-to-Many

El modelo Red introduce una nueva relacin, la relacin Many-to-Many Esta relacin indica que existe varios registros de una Tabla asociados con varios registros de otra Tabla, y viceversa

Tabla1

Tabla2

Informtica Prof. Gonzalo Mller Clase 21 GM - 67

Relaciones

Many-to-Many

El modelo Red introduce una nueva relacin, la relacin Many-to-Many Esta relacin indica que existe varios registros de una Tabla asociados con varios registros de otra Tabla, y viceversa

Informtica Prof. Gonzalo Mller Clase 21 GM - 68

Relaciones

Many-to-Many

El modelo Red introduce una nueva relacin, la relacin Many-to-Many Esta relacin indica que existe varios registros de una Tabla asociados con varios registros de otra Tabla, y viceversa

Informtica Prof. Gonzalo Mller Clase 21 GM - 69

Relaciones

Many-to-Many

El modelo Red introduce una nueva relacin, la relacin Many-to-Many Esta relacin indica que existe varios registros de una Tabla asociados con varios registros de otra Tabla, y viceversa

Informtica Prof. Gonzalo Mller Clase 21 GM - 70

Relaciones
Ejemplo:

Many-to-Many

Alumnos

Cursos

Alumnos
C.I. 1234 2584 Nombre Mara Jos

Cursos
Nmero 53778 25781 41248 Nombre No Lineal Dibujo 1 Lineal

Un Alumno puede estar en varios cursos


Informtica Prof. Gonzalo Mller Clase 21 GM - 71

Relaciones
Ejemplo:

Many-to-Many

Alumnos

Cursos

Alumnos
C.I. 1234 2584 Nombre Mara Jos

Cursos
Nmero 53778 25781 41248 Nombre No Lineal Dibujo 1 Lineal

Un Curso puede tener varios alumnos


Informtica Prof. Gonzalo Mller Clase 21 GM - 72

Relaciones
Ejemplo:

Many-to-Many

Alumnos

Cursos

Alumnos
C.I. 1234 2584 Nombre Mara Jos

Cursos
Nmero 53778 25781 41248 Nombre No Lineal Dibujo 1 Lineal

No hay Campo Relacional!


Informtica Prof. Gonzalo Mller Clase 21 GM - 73

Relaciones

Many-to-Many

Tabla de empalme
Informtica Prof. Gonzalo Mller Clase 21 GM - 74

Relaciones

Many-to-Many

La Tabla de empalme se encarga de establecer la relacin entre 2 Registros de la relacin Many-toMany. Usualmente slo contiene los Campos Relacionales.
Tabla de empalme

Informtica Prof. Gonzalo Mller Clase 21 GM - 75

Relaciones

Many-to-Many

La Tabla de empalme se encarga de establecer la relacin entre 2 Registros de la relacin Many-toMany. Usualmente slo contiene los Campos Relacionales.
Tabla de empalme

Informtica Prof. Gonzalo Mller Clase 21 GM - 76

Relaciones
Ejemplo:

Many-to-Many

Alumnos
Alumnos
C.I. 1234 2584 Nombre Mara Jos

Cursos

Cursos
Nmero 53778 25781 41248 Nombre No Lineal Dibujo 1 Lineal

Listas
C.I. 1234 1234 2584 Nmero 53778 25781 53778 Proyecto Newton Ocano Dos Fases

Tabla de empalme

Informtica Prof. Gonzalo Mller Clase 21 GM - 77

Relaciones
Ejemplo:

Many-to-Many

Alumnos
Alumnos
C.I. 1234 2584 Nombre Mara Jos

Cursos

Cursos
Nmero 53778 25781 41248 Nombre No Lineal Dibujo 1 Lineal

Listas
C.I. 1234 1234 2584 Nmero 53778 25781 53778 Proyecto Newton Ocano Dos Fases

Tabla de empalme

Informtica Prof. Gonzalo Mller Clase 21 GM - 78

Relaciones
Ejemplo:

Many-to-Many

Alumnos
Alumnos
C.I. 1234 2584 Nombre Mara Jos

Cursos

Cursos
Nmero 53778 25781 41248 Nombre No Lineal Dibujo 1 Lineal

Listas
C.I. 1234 1234 2584 Nmero 53778 25781 53778 Proyecto Newton Ocano Dos Fases

Tabla de empalme

Informtica Prof. Gonzalo Mller Clase 21 GM - 79

Relaciones
Ejemplo:

Many-to-Many

Alumnos
Alumnos
C.I. 1234 2584 Nombre Mara Jos

Cursos

Cursos
Nmero 53778 25781 41248 Nombre No Lineal Dibujo 1 Lineal

Listas
C.I. 1234 1234 2584

Deben estar en el padre


Nmero 53778 25781 53778 Proyecto Newton Ocano Dos Fases

Tabla Hijo

Informtica Prof. Gonzalo Mller Clase 21 GM - 80

Relaciones
Ejemplo:

Many-to-Many

Alumnos
Alumnos
C.I. 1234 2584 Nombre Mara Jos

Cursos

Relacin One-to-Many

Listas
C.I. 1234 1234 2584 Nmero 53778 25781 53778
Informtica Prof. Gonzalo Mller Clase 21 GM - 81

Proyecto Newton Ocano Dos Fases

Relaciones
Ejemplo:

Many-to-Many

Alumnos

Cursos

Cursos
Nmero Nombre No Lineal Dibujo 1 Lineal

Relacin One-to-Many
Listas
C.I. 1234 1234 2584 Nmero 53778 25781 53778 Proyecto Newton Ocano Dos Fases

53778 25781 41248

Informtica Prof. Gonzalo Mller Clase 21 GM - 82

Relaciones
Ejemplo:

Many-to-Many

Alumnos
Alumnos
C.I. 1234 2584 Nombre Mara Jos

Cursos

Cursos
Nmero 53778 25781 41248 Nombre No Lineal Dibujo 1 Lineal

Listas
C.I. 1234 1234 2584 Nmero 53778 25781 53778 Proyecto Newton Ocano Dos Fases

Relacin Many-to-Many

Informtica Prof. Gonzalo Mller Clase 21 GM - 83

Relaciones

Many-to-Many

La Relacin Many-to-Many se representa con una lnea que une los campos relacionales:

Informtica Prof. Gonzalo Mller Clase 21 GM - 84

Relaciones

Many-to-Many

La Relacin Many-to-Many se representa con una lnea que une los campos relacionales:

Ejemplo:
Alumnos ci : entero sin signo de 8 bytes nombre : string[20] Cursos nmero : entero sin signo de 4 bytes nombre : string[64]

Informtica Prof. Gonzalo Mller Clase 21 GM - 85

Relaciones

Many-to-Many

La Relacin Many-to-Many se representa con una lnea que une los campos relacionales:

Ejemplo:
Alumnos ci : entero sin signo de 8 bytes nombre : string[20] Cursos

nmero : entero sin signo de 4 bytes nombre : string[64]

Informtica Prof. Gonzalo Mller Clase 21 GM - 86

Relaciones

Many-to-Many

La Relacin Many-to-Many se representa con una lnea que une los campos relacionales:

Ejemplo:
Alumnos

Campo Relacional
Cursos

ci : entero sin signo de 8 bytes nombre : string[20]

nmero : entero sin signo de 4 bytes nombre : string[64]

Informtica Prof. Gonzalo Mller Clase 21 GM - 87

Relaciones

Many-to-Many

La Relacin Many-to-Many se representa con una lnea que une los campos relacionales:
Listas

Recordar que es necesario implementar una tabla de empalme

ci : entero sin signo de 8 bytes nmero : entero sin signo de 4 bytes

Ejemplo:
Alumnos

Campo Relacional
1 1
Cursos nmero : entero sin signo de 4 bytes nombre : string[64]

ci : entero sin signo de 8 bytes nombre : string[20]

Informtica Prof. Gonzalo Mller Clase 21 GM - 88

Base de Datos
Ejemplo: Definir el esquema de Tablas necesario para manejar la informacin de ventas diarias de un vendedor de donas.

Informtica Prof. Gonzalo Mller Clase 21 GM - 89

Ejercicio
Dado el siguiente conjunto de tablas identificar el tipo de relacin entre ambas y el campo relacional:
Libro 8 7 2 9 2 2 21 15 3 15 7 11 Subjeto 6 5 2 8 2 7 3 1 1 3 2 10 Autor 453 212 285 453 497 131 453 411 454 201 455 388 Ttulo DESMONTANDO WIKILEAKS EL LARGO CAMINO A LA LIBERTAD LA FIESTA DE LA DEMOCRACIA SPECTRUM 6 NEOCLASICISMO EL MUSEO SECRETO ARTE SACRO METODO HUBER LEONORA ANUARIO LUNAR Y ASTROLOGICO NOSTRADAMUS MAYA 2012 OPEN GL

Autor 453 454 455

Nombre ESTULIN, DANIEL PONIATOWSKA, ELENA CARTER, SPENCER

Informtica Prof. Gonzalo Mller Clase 21 GM - 90

Evaluacin: Relacin

Restricciones y Validaciones

Informtica Prof. Gonzalo Mller Clase 21 GM - 91

Ejercicio
Definir el esquema de Tablas necesario para manejar la informacin de: 1. Partido de Futbol. 2. Torneo de Ping-Pong. 3. Librera de Msica. 4. Librera de Revistas Digitales.

Informtica Prof. Gonzalo Mller Clase 21 GM - 92

Evaluacin: Esquema

Metadatos

Restricciones y Validaciones

Utilizando Metadatos es posible establecer restricciones y validaciones adicionales al tipo de dato: No Nulos Validaciones Claves
Datos Es Vlido?
F Rechazar
Informtica Prof. Gonzalo Mller Clase 21 GM - 93

Insertar V

Base de Datos

Metadatos

Restricciones y Validaciones

No Nulo: establece que ese dato no puede estar vaci


NOMBRE

ni campo1, ni campo3 puede ser nulo

campo1 : tipo1 NO NULO campo2 : tipo2 campo3 : tipo3 NO NULO campoN : tipoN

Datos

Campo1 No es Nulo Insertar Es Base de Vlido? V Datos F Rechazar Campo1 es Nulo


Informtica Prof. Gonzalo Mller Clase 21 GM - 94

Metadatos

Restricciones y Validaciones

Clave: etiqueta que se asigna a un campo utilizados para establecer las relaciones entre tablas, es decir, es la etiqueta que indica cuales son los Campos Relacionales. Tipos: Primaria

Tabla1
Forneas

Tabla2

Informtica Prof. Gonzalo Mller Clase 21 GM - 95

Metadatos

Restricciones y Validaciones

Clave Primaria: Identifica un registro de forma nica dentro de la tabla, corresponde con el Campo Relacional de la Tabla Padre. Es recomendable nmero entero para mejor desempeo.
Aqu se coloca el Campo Relacional que constituye la Clave Primaria
NOMBRE
campo1 : tipo1 NO NULO campo2 : tipo2 campo3 : tipo3 NO NULO campoN : tipoN

Informtica Prof. Gonzalo Mller Clase 21 GM - 96

Metadatos

Restricciones y Validaciones

Clave Primaria: Identifica un registro de forma nica dentro de la tabla, corresponde con el Campo Relacional de la Tabla Padre. Es recomendable nmero entero para mejor desempeo. Ejemplo:
Alumnos ci : entero sin signo de 8 bytes nombre : string[20] Correos ci : entero sin signo de 8 bytes texto : string[255]

Informtica Prof. Gonzalo Mller Clase 21 GM - 97

Metadatos

Restricciones y Validaciones

Clave Primaria: Identifica un registro de forma nica dentro de la tabla, corresponde con el Campo Relacional de la Tabla Padre. Es recomendable nmero entero para mejor desempeo.
Clave no repetida Insertar Es Base de Vlido? V Datos F Rechazar Clave repetida
Informtica Prof. Gonzalo Mller Clase 21 GM - 98

Datos

Metadatos

Restricciones y Validaciones

Clave Fornea: Identifica el Campo Relacional en la Tabla Hijo. Constituye un copia de la clave primaria en la Tabla.

Se coloca un (FK) en el Campo Relacional que constituye la Clave Fornea

NOMBRE
campo1 : tipo1 NO NULO campo2 : tipo2 (FK) campo3 : tipo3 NO NULO campoN : tipoN

Informtica Prof. Gonzalo Mller Clase 21 GM - 99

Metadatos

Restricciones y Validaciones

Clave Fornea: Identifica el Campo Relacional en la Tabla Hijo. Constituye un copia de la clave primaria en la Tabla. Ejemplo:
Alumnos ci : entero sin signo de 8 bytes nombre : string[20] Correos ci : entero sin signo de 8 bytes (FK) texto : string[255]

Informtica Prof. Gonzalo Mller Clase 21 GM - 100

Metadatos

Restricciones y Validaciones

Clave Fornea: Identifica el Campo Relacional en la Tabla Hijo. Constituye un copia de la clave primaria en la Tabla.

Datos

Clave existe Insertar Es Vlido? V F Rechazar Clave no existe


Informtica Prof. Gonzalo Mller Clase 21 GM - 101

Base de Datos

Metadatos

Restricciones y Validaciones

Validacin: Expresin lgica que establece los valores vlidos. Si la expresin resulta falsa con el dato, este no es vlido. Se puede combinar campos en la expresin.
NOMBRE
campo1 : tipo1 NO NULO campo2 : tipo2 (FK) campo3 : tipo3 NO NULO campoN : tipoN

Expresiones Lgicas
Informtica Prof. Gonzalo Mller Clase 21 GM - 102

Metadatos

Restricciones y Validaciones

Validacin: Expresin lgica que establece los valores vlidos. Si la expresin resulta falsa con el dato, este no es vlido. Se puede combinar campos en la expresin. Ejemplo:
Datos ci : entero sin signo de 8 bytes edad : entero sin signo de 1 byte edad > 5 AND edad < 15

Informtica Prof. Gonzalo Mller Clase 21 GM - 103

Metadatos

Restricciones y Validaciones

Validacin: Expresin lgica que establece los valores vlidos. Si la expresin resulta falsa con el dato, este no es vlido. Se puede combinar campos en la expresin.
Datos
Expresin Verdadera Insertar Es Base de Vlido? V Datos F Rechazar Expresin Falsa
Informtica Prof. Gonzalo Mller Clase 21 GM - 104

Sistema

Informtica Prof. Gonzalo Mller Clase 21 GM - 105

Diseo del Sistema

Interfaz

Aplicacin

Base de Datos

Informtica Prof. Gonzalo Mller Clase 21 GM - 106

Diseo del Sistema

Front-End

Back-End

Interfaz

Aplicacin

Base de Datos

Informtica Prof. Gonzalo Mller Clase 21 GM - 107

Diseo del Sistema

Front-End1

Back-End

Front-End2

Base de Datos Aplicacin3

Una Base de Datos puede ser manejada por diferentes aplicaciones y front-ends (construidos inclusive en diferentes lenguajes)
Informtica Prof. Gonzalo Mller Clase 21 GM - 108

Diseo del Sistema

Front-End1

Back-End

Front-End2

Base de Datos Aplicacin3

Una Base de Datos puede ser manejada por diferentes aplicaciones y front-ends (construidos inclusive en diferentes lenguajes)
Informtica Prof. Gonzalo Mller Clase 21 GM - 109

Desarrollo del Sistema


1. Anlisis 2. Diseo de la Base de Datos 3. Diseo del Front-End 4. Implementacin del Sistema
Informtica Prof. Gonzalo Mller Clase 21 GM - 110

También podría gustarte