Modelos Relacionales SQL Server

Preview:

Citation preview

Julián Castiblanco P.Julian_castiblancop@hotmail.com

Líder ITPros-DC

Primera Sesión:

Modelos Relacionales

Normalización

Ejemplo

Segunda Sesión:

Creación de Bases de datos

Creación de Tablas

Creación de restricciones

Introducción a Transact SQL

Ejemplo

Tercera Sesión:

Creación de Procedimientos

Creación de Vistas

Seguridad de Bases de datos

» Modelos Relacionales

˃ Historia

» Normalización

» Ejemplo

» Instalación de SQL Server

1946: Eniac

1960’s: Transistor

1970: CoddModelo ER

1994: Acer486

1999: Problema Y2K

» 17,468 tubos al vacío.

» 7,200 diodos.

» 1,500 relevos

» 70,000 resistencias

» 10,000 condensadores

» 5 de puntos de soldadura.

» Su tamaño (2.4 m × 0.9 m ×

30 m).

» Pesaba más de 27 toneladas

Edgar Lilienfeld en 1925

patentó el primer

transistor

Precursor de electrónica

moderna

Memoria de 64 Kb, Reloj

de 58KHz

Modelos

Relacionales

Capacidad

Reglas

de Codd

Acer 486:

Procesos X486

Ram: 1MB

DD: 180 MB

Floppy: 1.4MB

CapacidadTecnología

Institución Tamaño

Librería Congreso USA 130 millones de items, 29 millones de libros,

10.000 nuevos items por día

Amazon 59 millones de clientes activos, Más de 42

terabytes de datos

YouTube 100 millones de videos vistos por día

65.000 videos agregados por día

Más de 50 terabytes de datos

Choice Point 250 terabytes de información personal de

ciudadanos.

Información de cerca de 250 millones de personas

Sprint (telco) 2.85 trillones de registros

365 millones de llamadas por día

AT&T 323 terabytes de información

1.9 trillones de registros

Global Atmosphere Watch 6 Petabytes de información

La normalización es el proceso de organizar

los datos de una base de datos. Se incluye

la creación de tablas y el establecimiento de

relaciones entre ellas según reglas

diseñadas tanto para proteger los datos

como para hacer que la base de datos sea

más flexible al eliminar la redundancia y las

dependencias incoherentes.

» Elimine los grupos repetidos de las tablas individuales.

» Cree una tabla independiente para cada conjunto de

datos relacionados.

» Identifique cada conjunto de datos relacionados con una

clave principal.

Carn

et

Nomb

re

Apellid

o

Ciudad

Alu Asesor

Ciudad

Asesor

Oficina

Asesor

Curso

1

Curso

2

Curso

3

1000

Thoma

s

Sanche

z Bogotá

Prof.

Vega Bogotá 402Mat

Españo

l Inglés

1001Carlos

Rodrigu

ez Cali

Prof.

Diaz Bogotá 403

Social

es

Ed.

Fisica

quimi

ca

1002David Duarte Bogotá

Prof.

Cortez Bogotá 502Trigo

Religió

n Artes

1003Ana Peña Bogotá

Prof.

Loaiza Bogotá 505

Music

a Dibujo

Biolog

ia

1004Diana Diaz Bogotá

Prof.

Vega Bogotá 402Mat

Españo

l Inglés

1005Carlos Angel Bogotá

Prof.

Diaz Bogotá 403

Social

es

Ed.

Fisica

quimi

ca

1006Juan

Rodrigu

ez Bogotá

Prof.

Cortez Bogotá 502Trigo

Religió

n Artes

1007Pedro Duarte Medellín

Prof.

Vega Bogotá 402Mat

Españo

l Inglés

1008Rocio Pinzón

Cartagen

a

Prof.

Diaz Bogotá 403

Social

es

Ed.

Fisica

quimi

ca

PRIMERA FORMA NORMAL: Intenta no crear más columnas

Carnet Nombre Apellido Asesor Oficina Asesor Clase

1000Thomas Sánchez Prof. Vega 402Matemática

1000Thomas Sánchez Prof. Vega 402Español

1000Thomas Sánchez Prof. Vega 402Inglés

1000Thomas Sánchez Prof. Vega 402Sociales

1001Carlos Rodríguez Prof. Díaz 403Sociales

1001Carlos Rodríguez Prof. Díaz 403Ed. Fisica

1001Carlos Rodríguez Prof. Diaz 403química

id Clase Clase

1Mat

2Español

3Inglés

4Sociales

5Ed. Fisica

6química

Carnet Nombre Apellido Ciudad Alu Asesor Ciudad Asesor Oficina Asesor Id Clase

1000Thomas Sanchez Bogotá Prof. Vega Bogotá 4021

1000Thomas Sanchez Bogotá Prof. Vega Bogotá 4022

1000Thomas Sanchez Bogotá Prof. Vega Bogotá 4023

1000Thomas Sanchez Bogotá Prof. Vega Bogotá 4024

1001Carlos Rodriguez Cali Prof. Diaz Bogotá 4034

1001Carlos Rodriguez Cali Prof. Diaz Bogotá 4035

1001Carlos Rodriguez Cali Prof. Diaz Bogotá 4036

Cree una tabla

independiente

para cada

conjunto de datos

relacionados

» Cree tablas independientes para conjuntos de

valores que se apliquen a varios registros.

» Relacione estas tablas con una clave externa.

Carnet Nombre Apellido

Ciudad

Alu Asesor

Ciudad

Asesor

Oficina

Asesor Id Clase

1000Thomas Sanchez Bogotá Prof. Vega Bogotá 4021

1000Thomas Sanchez Bogotá Prof. Vega Bogotá 4022

1000Thomas Sanchez Bogotá Prof. Vega Bogotá 4023

1000Thomas Sanchez Bogotá Prof. Vega Bogotá 4024

1001Carlos Rodriguez Cali Prof. Diaz Bogotá 4034

1001Carlos Rodriguez Cali Prof. Diaz Bogotá 4035

1001Carlos Rodriguez Cali Prof. Diaz Bogotá 4036

Carnet Nombre Apellido Ciudad Alu AsesorCiudad Asesor Clase

1000Thomas Sanchez 1 1 1 1

1000Thomas Sanchez 1 1 1 2

1000Thomas Sanchez 1 1 1 3

1000Thomas Sanchez 1 1 1 4

1001Carlos Rodriguez 2 2 1 4

1001Carlos Rodriguez 2 2 1 5

1001Carlos Rodriguez 2 2 1 6

id ciudad ciudad

1Bogota

2Cali

id asesor asesoroficina asesor

1Prof. Vega 402

2Prof. Diaz 403

» Elimine los campos que no dependan de la clave.

Carnet Nombre Apellido Ciudad Alu AsesorCiudad Asesor Clase

1000Thomas Sanchez 1 1 1 1

1000Thomas Sanchez 1 1 1 2

1000Thomas Sanchez 1 1 1 3

1000Thomas Sanchez 1 1 1 4

1001CarlosRodriguez 2 2 1 4

1001CarlosRodriguez 2 2 1 5

1001CarlosRodriguez 2 2 1 6

Carnet Asesor Clase1000 1 11000 1 21000 1 31000 1 41001 2 41001 2 51001 2 6

id asesor asesoroficina asesor

Ciudad Asesor

1Prof. Vega 402 12Prof. Diaz 403 1

Carnet Nombre Apellido Ciudad Alu

1000Thomas Sanchez 1

1001Carlos Rodriguez 2

id Clase Clase1Matemática

2Español3Inglés

4Sociales5Ed. Fisica6quimica

id ciudad ciudad1Bogota2Cali

Carnet Nombre Apellido Ciudad Alu Asesor Ciudad Ase Ofic Asesor Curso 1 Curso 2 Curso 3

1000Thomas Sanchez Bogotá Prof. Vega Bogotá 402Mat Español Inglés

1001Carlos Rodriguez Cali Prof. Diaz Bogotá 403Sociales Ed. Fisica quimica

1002David Duarte Bogotá Prof. Cortez Bogotá 502Trigo Religión Artes

1003Ana Peña Bogotá Prof. Loaiza Bogotá 505Musica Dibujo Biologia

1004Diana Diaz Bogotá Prof. Vega Bogotá 402Mat Español Inglés

1005Carlos Angel Bogotá Prof. Diaz Bogotá 403Sociales Ed. Fisica quimica

1006Juan Rodriguez Bogotá Prof. Cortez Bogotá 502Trigo Religión Artes

1007Pedro Duarte Medellín Prof. Vega Bogotá 402Mat Español Inglés

1008Rocio Pinzón Cartagena Prof. Diaz Bogotá 403Sociales Ed. Fisica quimica

» https://www.microsoft.com/betaexperience/pd/SQLDENEXPPOST/e

nus/default.aspx

» http://www.computerhistory.org/semiconductor/timeline/1953-

transistorized-computers-emerge.html

» http://en.wikipedia.org/wiki/Edgar_F._Codd

» http://en.wikipedia.org/wiki/Floppy_disk

» http://support.microsoft.com/kb/283878/es

» SQL and Relational Theory. C.J. Date. Junio 2009

» Data Architecture From Zen to Reality. Tupper Charles. 2011