programación Sql

May 10, 2018 | Author: Lucho Yunca Zegarra | Category: Microsoft Sql Server, Table (Database), Relational Database, Sql, Databases


Comments



Description

Taller de Base de DatosSesió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 Cosa) específica. Lugar. .Tabla: Definición • Colección de datos sobre una entidad (Persona. • Las tablas están en el corazón de SQL Server y del modelo relacional en general. que tiene un número discreto de atributos designados (por ejemplo cantidad o tipo). Tabla: Creación • Para crear una tabla debemos especificar : • El nombre que le queremos asignar • El nombre de cada campo • El tipo de dato de cada campo • Características de cada campo • Tener en cuenta el estándar para crear objetos . se puede repetir en otras tablas dentro de la misma base de datos. • Not Null indica que dicha columna requiere la asignación de un valor distinto de ‘null’. También se pueden definir tipos de datos de usuario. Tabla: Creación Nombre de tabla Create Table Empleado( Campo Tipo de dato Característica codEmp char(8) not null. . • El tipo de dato debe ser alguno de los ofrecidos por SQL Server. nombreEmp varchar(30) not null. Null indica que la columna acepta ‘null’ como un valor. sexoEmp char(1) Null ) • El nombre de la columna debe ser único dentro de la tabla. sin embargo. CREATE TABLE. DROP TABLE. Es necesario que la tabla no tenga dependencias asociadas.Crea un tabla 2. ALTER TABLE.Elimina una tabla y sus datos... Tabla: Sintaxis DDL 1. ..Modifica la estructura de una tabla 3. Ejemplo : . para poder hacer esto se debe dar una condición muy concreta: en las dos tablas tiene que haber un campo que contenga el mismo dato. • Establecer una relación entre dos tablas equivale a establecer una unión entre ellas. . Relaciones entre Tablas • Las relaciones sirven para poder utilizar datos procedentes de otras tablas como si formaran parte de la tabla en la que se esté trabajando. • La clave principal y externa se indican con una llave .Relaciones entre Tablas: 1 a 1 • Se crean si ambas tablas tienen una llave primaria o restricción única. mientras que el lado de la clave externa de una relación se indica con un símbolo de infinito .Relaciones entre Tablas: 1 a M • Una relación de uno a varios sólo se crea si una de las columnas relacionadas es una clave principal o tiene una restricción única . • El lado de la clave principal de una relación de uno a varios se indica con un símbolo de llave. . • Un Contrato puede ser la extensión de otro contrato y un contrato puede tener muchas extensiones.Relaciones entre Tablas: 1 a M • A continuación se muestra una relación de uno a muchos en una relación recursiva. MODELO LÓGICO m m se DEPARTAMENTOS registra CONTRATO Cod_Edif Area_Tot_Dep Cod_Cont Cod_Dep Fec_Ini_Alq Fec_Fin_Alq . una relación “Muchos a Muchos” se representa como 2 relaciones “Uno a Muchos”. Relaciones entre Tablas: M a M A nivel físico. . Relaciones entre Tablas: M a M 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 Data Base Owner (dbo) BASE DE DATOS . suelen ser como: • Valores no nulos (campo requerido) • Definición de índice sin duplicados • Definición de clave principal y clave foránea • Definición de validación del dominio de las columnas . Integridad de Datos: Restricción Una restricción consiste en la definición de una característica adicional que tiene una columna o una combinación de columnas. Unicidad de datos. FOREIGN KEY. 6. CHECK. 1. Correlativo automático. IDENTIDAD. . Valor vacío. 4. 2. Alternativa de valores. 7. PRIMARY KEY. Integridad de Datos: Restricción Son 7 restricciones o constraint a nivel del motor de base de datos. Clave externa. 5. UNIQUE. 3. Clave Primaria. NULL. DEFAULT. Valor predeterminado. Constraint: Primary Key • Valor que identifica de manera única a cada FILA • El valor puede ser el de un campo (simple) o la combinación de varios campos (compuesta) • Los campos que identifican al Primary Key deben ser Not Null • Restricción: – No permite valores nulos. . – No permite valores duplicados. Constraint : Primary Key ENTIDAD DISTRITOS ID_DISTRITO NOM_DiSTRITO L01 CERCADO DE LIMA L02 LA VICTORIA L03 LINCE • Se define un Primary Key por TABLA • Se puede definir para una o más COLUMNAS • Índice de tipo CLUSTERED: La tabla está ordenada físicamente por su índice . Constraint : Foreign Key • Un Foreign Key permite definir una clave externa. que es una columna o combinación de columnas. que se utiliza para establecer y exigir un vínculo entre los datos de dos tablas. • Evidencia una relación física entre dos entidades • En una relación “Uno a Muchos” la llave del lado “Uno” es referenciada desde el lado “Muchos” . no debe de existir un dato en Clientes. . debe haber sido registrado en Distritos.A. Tabla CLIENTES 9871900 L01 LA FABRIL SRLTDA. 9871901 L02 CREDICORP • Antes de registrar un dato en Clientes.Constraint : Foreign Key ID_DISTRITO DIS_NOMBRE Tabla DISTRITOS L01 CERCADO DE LIMA L02 LA VICTORIA L03 LINCE ID_CLIENTEID_DISTRITO CLI_RAZON 9871899 L01 BIMBO S. • Antes de borrar un dato de Distritos. Constraint : Foreign Key Alter Table Estado Add Primary Key (Cod_Est) 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 . • NULL significa que no hay ninguna entrada. • Un valor NULL no es lo mismo que cero (0). La presencia de un valor NULL suele implicar que el valor es desconocido o no está definido. Constraint : Permitir valores NULL • La nulabilidad de una columna determina si las filas de una tabla pueden contener un valor NULL en esa columna. en blanco o que una cadena de caracteres de longitud cero. . como "". Constraint NULL ENTIDAD : tb_Distrito ID_DIST NOM_DIST CAT_DIST L01 CERCADO DE LIMA B L02 LA VICTORIA (NULL) L03 LINCE (NULL) • Por defecto todo DATO ES OBLIGATORIO. • Se pueden actualizar los datos (null) en otro momento de la edición. • ¿Qué dato me puede faltar cuando registro una fila nueva? . Constraint UNIQUE 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. DF_CERO : Si no se registra un valor para un precio este será 0 (CERO). • En caso de dejarse vacía al momento de la creación de la fila se registra dicho valor. <. • Este rango puede ser un conjunto de valores estáticos : (‘MASCULINO’.>.>=.<=. .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.’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 • Si la cantidad que se vende debe ser siempre mayor que 0. pero menor que 100: • Expresión en Transact/SQL: (Cantidad > 0 and Cantidad < 100) . debe coincidir con el ser de solo lectura PRIMARY KEY.IDENTITY Es una columna se Una entidad puede convierte en un tener solo una columna correlativo automático. debe ser de tipo En algunos casos puede numérico entero. Identidad. . Incremento Tabla: tb_PedidosCabe idPedido FechaPedido MontoPedido 5 01/08/2000 8900.IDENTITY Debe tener un Valor Inicial y un.00 15 02/08/2000 450.00 IDENTIDAD : 5 : 5 (Inicio e Incremento) .00 10 02/08/2000 780. máximo de 20MB y un factor de crecimiento de 10%. Cree la base de datos BD_SUSCRIPCIONES en la carpeta C:\PRODUCCION\ con la siguiente configuración: • Archivo de datos: Un tamaño inicial de 20MB. máximo de 40MB y un factor de crecimiento de 5MB. Active la base de datos BD_SUSCRIPCIONES . 2. • Archivo de transacciones: Un tamaño inicial de 4MB.EJERCICIOS 1. BD_SUSCRIPCIONES 3. Cree las tablas mostradas usted defina los tipos de datos : . DESC_ENVIO. Las descripciones de los envíos. 3. 4. Los países válidos deben ser PERU. 5. La FEC_INICIO_SUSC debe ser por defecto igual a la fecha del día de hoy. El TIEMPO_ENVIO por defecto es 1. CHILE y ARGENTINA. deben ser únicos.EJERCICIOS CONSTRAINS 1. 2. El PORC_DSCTO_CLI debe ser mayor o igual a 0. . UNIQUE . Las descripciones de los envíos. DEFAULT 4. El PORC_DSCTO_CLI debe ser mayor o igual a 0. DESC_ENVIO. deben ser únicos. La FEC_INICIO_SUSC debe ser por defecto igual a la fecha del día. Los países válidos deben ser PERU.EJERCICIOS CONSTRAINS 1. CHECK 2. El TIEMPO_ENVIO por defecto es 1. CHECK 3. CHILE y ARGENTINA. DEFAULT 5. ACTIVIDAD PROPUESTA . Base de datos VENTAS . 000. Los precios de venta se encuentran entre 1 y 1. DEFAULT 4. CHECK 2. CHECK 3. UNIQUE . Las descripciones de los productos deben ser únicos. La fecha de la boleta por defecto es la fecha del día. EJERCICIOS CONSTRAINS 1. Los stocks de los productos deben ser mayor o igual a 0. GRACIAS .
Copyright © 2024 DOKUMEN.SITE Inc.