Programación SQL
Programación SQL
Programación SQL
Sesión 02
Creación de Tablas
Implementación de Restricciones
Computación e Informática
2017 - I Prof.: Yuri José Pando Fernández
Logro de la Sesión
Al terminar la unidad, los alumnos construirán
una base de datos relacional utilizando el
gestor de base de datos SQL Server 2014 y los
comandos del Lenguaje de Definición de
Datos (DDL), asegurando la integridad de los
datos mediante el empleo de restricciones
tomando como caso un proceso de negocio
real.
Temas a tratar
• Creación de tablas
Título Presentación
• Implementación de restricciones
PRIMARY KEY
FOREIGN KEY
CHECK
UNIQUE
DEFAULT
Tabla: Definición
• Colección de datos sobre una
entidad (Persona, Lugar,
Cosa) específica, que tiene un
número discreto de atributos
designados (por ejemplo
cantidad o tipo).
• El tipo de dato debe ser alguno de los ofrecidos por SQL Server. También se
pueden definir tipos de datos de usuario.
• Not Null indica que dicha columna requiere la asignación de un valor distinto
de ‘null’. Null indica que la columna acepta ‘null’ como un valor.
Tabla: Sintaxis DDL
MODELO LÓGICO
m m
se
DEPARTAMENTOS registra
CONTRATO
MODELO FÍSICO
Se define una tabla intermedia (que une a las relacionadas) la cual tiene una PK
(Primary Key) conformada por las columnas PK de las otras dos tablas.
Integridad de Datos: Restricción
Restricciones
ID_CLIENTEID_DISTRITO CLI_RAZON
9871899 L01 BIMBO S.A.
Tabla CLIENTES
9871900 L01 LA FABRIL SRLTDA.
9871901 L02 CREDICORP
Llave primaria
Alter Table Usuario
Add Primary Key (Cod_Usua)
Llave foránea
Llave primaria
Alter Table Usuario
Add Foreign Key (Cod_Est)
References Estado
Constraint : Permitir valores NULL
SIMPLE COMPUESTO
Tabla: tb_Pais Tabla : tb_ClientexDistrito
idPais nom_pais
L01 Peru
ID_DIST
ID_CLI
L02 Chile L01 808098
L03 Argentina L01 808099
L03 808098
UN_DISNOMBRE
UN_DISTRITO_CLIENTE
Constraint DEFAULT
• Se asigna un valor predeterminado a la columna.
• En caso de dejarse vacía al momento de la
creación de la fila se registra dicho valor.
DF_CERO : Si no se registra un
valor para un precio este será 0
(CERO).
Constraint CHECK
• Las restricciones CHECK exigen la integridad del dominio
mediante la limitación de los valores que puede aceptar una
columna a partir de una expresión lógica que no se basa en
datos de otra columna.
• Algunas columnas tienen un rango de valores válidos.
• Este rango puede ser un conjunto de valores estáticos :
(‘MASCULINO’,’FEMENINO’)
• Este rango puede ser una condición de validez : =,<,>,>=,<=.
• Este rango puede tener relación con otras entidades.
Constraint CHECK
ENTIDAD : tb_.PedidosDeta
idPedido Cantidad
001-5698 4
001-5699 20
001-5700 1