26
Julián Castiblanco P. [email protected] Líder ITPros-DC

Modelos Relacionales SQL Server

Embed Size (px)

Citation preview

Page 1: Modelos Relacionales SQL Server

Julián Castiblanco [email protected]

Líder ITPros-DC

Page 2: Modelos Relacionales SQL Server

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

Page 3: Modelos Relacionales SQL Server

» Modelos Relacionales

˃ Historia

» Normalización

» Ejemplo

» Instalación de SQL Server

Page 4: Modelos Relacionales SQL Server

1946: Eniac

1960’s: Transistor

1970: CoddModelo ER

1994: Acer486

1999: Problema Y2K

Page 5: Modelos Relacionales SQL Server

» 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

Page 6: Modelos Relacionales SQL Server

Edgar Lilienfeld en 1925

patentó el primer

transistor

Precursor de electrónica

moderna

Memoria de 64 Kb, Reloj

de 58KHz

Page 7: Modelos Relacionales SQL Server
Page 8: Modelos Relacionales SQL Server

Modelos

Relacionales

Capacidad

Reglas

de Codd

Page 9: Modelos Relacionales SQL Server
Page 10: Modelos Relacionales SQL Server

Acer 486:

Procesos X486

Ram: 1MB

DD: 180 MB

Floppy: 1.4MB

Page 11: Modelos Relacionales SQL Server

CapacidadTecnología

Page 12: Modelos Relacionales SQL Server

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

Page 13: Modelos Relacionales SQL Server

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.

Page 14: Modelos Relacionales SQL Server

» 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.

Page 15: Modelos Relacionales SQL Server

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

Page 16: Modelos Relacionales SQL Server

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

Page 17: Modelos Relacionales SQL Server

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

Page 18: Modelos Relacionales SQL Server

» Cree tablas independientes para conjuntos de

valores que se apliquen a varios registros.

» Relacione estas tablas con una clave externa.

Page 19: Modelos Relacionales SQL Server

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

Page 20: Modelos Relacionales SQL Server

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

Page 21: Modelos Relacionales SQL Server

» Elimine los campos que no dependan de la clave.

Page 22: Modelos Relacionales SQL Server

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

Page 23: Modelos Relacionales SQL Server

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

Page 24: Modelos Relacionales SQL Server

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

Page 25: Modelos Relacionales SQL Server
Page 26: Modelos Relacionales SQL Server

» 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