Vous êtes sur la page 1sur 39

SQL I

Modulo II, Bloque II, 2020


Profesor: César Duarte
Agenda
• Presentación del profesor y del curso
• Herramientas a utilizar
• Diagnóstico
• Conceptos iniciales
DATOS DE CONTACTO

César Duarte

(506) 8729 4958

cfdmo@hotmail.com

https://www.linkedin.com/in/cfdmo/
Acerca de ustedes
• Realizar foro de presentación en el entorno virtual.
• Es evaluado
Acerca del curso
Tarea
• Realizar instalación de Microsoft SQL Server Express Edition y
Microsoft SQL Server Management Studio (quienes utilicen
Windows).
• Realizar instalación de Azure Data Studio (quienes utilicen Mac).
• Ver detalles sobre enlaces de descarga y procedimientos en el PCC
Virtual.
• Entrega de la encuesta a más tardar Jueves 25 Setiembre 11:59 PM
Diagnóstico
• Cree un modelo relacional que satisfaga los siguientes
requerimientos:
• Se desea almacenar información en un sistema de una cadena de librerías
donde se permita tener un catálogo de libros con sus respectivos autores. De
los libros se desea saber su título, edición, año de publicación y autor. Del
autor se desea saber su nombre y apellido.
• Adicionalmente se desea saber cuántas unidades disponibles existen para un
libro en particular. Considere que esta cadena de tiendas posee varias
bodegas por lo cual el mismo libro puede estar (o no) en diferentes
ubicaciones.
• Finalmente, se desea saber cuándo un libro se vende y saber la fecha en la
que se realizó la venta, el cliente al que se le vendió y cuál fue el vendedor. De
estos dos últimos únicamente se desea saber su nombre y apellido.
Estructura elemental de una BD relacional
• Archivos
• Tablas
• Filas
• Columnas
• Índices y restricciones
• Usuarios
Otros elementos
• Vistas
• Funciones
• Procedimientos
• Triggers
Bases de Datos y Modelo Cliente-Servidor
Arquitectura cliente/servidor

Aplicaciones de negocio
Oracle Database Server (LOB)

Sistema Operativo
(Windows, Linux)
Database client
(driver)
La Nube
La Nube
La Nube
La nube
Una arquitectura típica de una solución analítica
Lenguaje SQL

SQL
DML DDL DCL TCL

SELECT INSERT UPDATE DELETE CREATE ALTER DROP


Tablas
• Otros elementos:
• Índices
• Constraints
• Defaults
• Secuencias
• …
CREATE TABLE
Tratamiento de valores nulos
Ejemplo: Tipos de Datos MSSQL Server
• Lista completa: https://docs.microsoft.com/en-us/sql/t-sql/data-
types/data-types-transact-sql?view=sql-server-ver15
Ejemplo
Normalizar
• Organizar los datos de una base de datos
• Incluye crear tablas y establecer relaciones entre ellas para proteger
los datos y eliminar redundancia y dependencias incoherentes
Primera forma normal
• Elimine los grupos repetidos de las tablas
• Cree una tabla para cada conjunto de datos relacionados
• Identifique cada conjunto de datos con una clave primaria
Ejemplo
En primera forma normal
Segunda forma normal
• Cree tablas independientes para conjuntos de valores que se apliquen
a varios registros
• Relacione las tablas con una clave externa
Ejemplo
En segunda forma normal
Tercera forma normal
• Elimine los campos que no dependan de la clave
• Ojo: cuidado con rendimiento
Ejemplo
En tercera forma normal
En tercera forma normal
Relaciones entre tablas
• Creación de FOREIGN KEY:
Sobre una tabla ya existente

• En general utilizaremos el comando ALTER para


cambiar la definición de un objeto ya creado en la
base de datos.
Tarea individual
• Realizar práctica de normalización. Subir tanto diagrama relacional
como scripts de creación de bases de datos.
• Fecha entrega: Viernes 25 de Setiembre 6:00 PM
Operaciones básicas (DML)
• Insert: nuevos registros
• Select: extracción/consulta de registros
• Update: actualización de registros
• Delete: eliminación de registros
Insert

Vous aimerez peut-être aussi