CURSO: BASE DE DATOS Caso 01: BD_TIENDA Diseñe una base de datos llamada BD_TIENDA teniendo en cuenta las siguientes opciones: Archivo físico principal, archivo físico secundario y el archivo lógico. Valide la existencia de la base de datos. Asigne al archivo físico principal el nombre “BD_TIENDA_PRI”, con un tamaño inicial de 100MB, un tamaño máximo permitido por el sistema, una tasa de crecimiento del 15% y debe ser guardado en la carpeta C:\TIENDA\DATA. Asigne al archivo físico secundario el nombre “BD_TIENDA_SEC”, con un tamaño inicial de 50MB, un tamaño máximo de 250MB, una tasa de crecimiento del 10% y debe ser guardado en la carpeta C:\TIENDA\SEC. Asigne al archivo de transacciones el nombre “BD_TIENDA_TRA”, con un tamaño inicial de 5MB, un tamaño máximo de 50MB, una tasa de crecimiento del 5MB y debe ser guardado en la carpeta C:\TIENDA\LOG. Verifique la existencia de los archivos implementados. - - - - Además, debe considerar lo siguiente: - Agregar 2 FileGroups a la Base de datos BD_TIENDA, luego adicione un archivo secundario a cada grupo. Debe tener en cuenta que, el primer archivo deberá estar guardado en la unidad D: dentro de la carpeta Pedidos y el segundo archivo guárdelo en la unidad E; dentro de la carpeta Facturación. [email protected] 1 CURSO: BASE DE DATOS Implementación de una base de datos en SQL Server 2012 1. Caso desarrollado: MINIMARKET Implementaremos un script de SQL Server que permita crear la base de datos BD_MINIMARKET. Para ello se cuenta con el siguiente diagrama: Usando TRANSACT/SQL, realice lo siguiente: 1. Cree la base de datos BD_MINIMARKET de manera estándar 2. Active la base de datos BD_MINIMARKET 3. Cree las tablas mostradas 4. Agregue las llaves Primarias (ADD PRIMARY KEY) 5. Agregue las llaves Foráneas, Relaciones (ADD FOREIGN KEY – REFERENCES) Solución: USE MASTER GO --DEFINIENDO EL FORMATO DE LA FECHA DÍA, MES AÑO SET DATEFORMAT DMY GO --VERIFICANDO LA EXISTENCIA DE LA BASE IF DB_ID('BD_MINIMARKET') IS NOT NULL BEGIN DROP DATABASE BD_MINIMARKET [email protected] 2 CURSO: BASE DE DATOS END GO --CREANDO LA BASE DE DATOS CREATE DATABASE BD_MINIMARKET GO --ACTIVANDO LA BASE DE DATOS USE BD_MINIMARKET GO --CREANDO LAS TABLAS --TABLA DISTRITO CREATE TABLE DISTRITO ( CODIGO_DIST CHAR (3) NOT NULL NOMBRE_DIST VARCHAR (50) ) GO --TABLA CATEGORIA CREATE TABLE CATEGORIA ( CODIGO_CAT CHAR (3) NOT NULL NOMBRE_CAT VARCHAR (40) ) GO --TABLA PRODUCTO CREATE TABLE PRODUCTO ( CODIGO_PRO CHAR DESCRI_PRO VARCHAR PRE_VEN_PRO MONEY ST_ACT_PRO INT ST_MIN_PRO INT FEC_VEN_PRO DATE CODIGO_CAT CHAR ) GO --TABLA CLIENTE CREATE TABLE CLIENTE ( CODIGO_CLI CHAR NOMBRE_CLI VARCHAR APATER_CLI VARCHAR AMATER_CLI VARCHAR DIRECC_CLI VARCHAR TELEFO_CLI VARCHAR CODIGO_DIS CHAR CORREO_CLI VARCHAR ) GO PRIMARY KEY, PRIMARY KEY, (6) NOT NULL PRIMARY KEY, (50) NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL, (3) NOT NULL REFERENCES CATEGORIA (6) (30) (30) (30) (50) (12) (3) (30) --TABLA CARGO CREATE TABLE CARGO ( CODIGO_CAR INT DESCRI_CAR VARCHAR (30) ) GO NOT NULL PRIMARY KEY, NOT NULL, NOT NULL, NOT NULL, NULL, NULL, NOT NULL REFERENCES DISTRITO, NULL NOT NULL NOT NULL PRIMARY KEY, --TABLA EMPLEADO [email protected] 3 CURSO: BASE DE DATOS CREATE TABLE EMPLEADO ( CODIGO_EMP INT APELLI_EMP VARCHAR NOMBRE_EMP VARCHAR FECNAC_EMP DATE DIRECC_EMP VARCHAR FECCON_EMP DATE CORREO_EMP VARCHAR TELEFO_EMP VARCHAR CODIGO_CAR INT CODIGO_EMP_SUP INT CODIGO_DIS CHAR ) GO (30) (30) (60) (35) (15) (3) NOT NULL PRIMARY KEY, NOT NULL, NOT NULL, NOT NULL, NOT NULL, NOT NULL, NULL, NULL, REFERENCES CARGO, REFERENCES EMPLEADO, REFERENCES DISTRITO --TABLA BOLETA CREATE TABLE BOLETA ( NRO_BOLETA CHAR (6) NOT NULL FECHA_VENTA DATE NOT NULL, CODIGO_CLI CHAR (6) NOT NULL CODIGO_EMP INT NOT NULL ESTADO_BOL CHAR (2) ) GO --TABLA DETALLEBOLETA CREATE TABLE DETALLEBOLETA ( NRO_BOLETA CHAR (6) NOT NULL CODIGO_PRO CHAR (6) NOT NULL CANTID_DET INT NOT NULL, PRECIO_DET MONEY PRIMARY KEY (NRO_BOLETA, CODIGO_PRO) ) GO PRIMARY KEY, REFERENCES CLIENTE, REFERENCES EMPLEADO, REFERENCES BOLETA, REFERENCES PRODUCTO, 2. Caso propuesto: AUTO RENTA EIRL Implementaremos un script de SQL Server que permita crear la base de datos BD_RENTA. Para ello se cuenta con el siguiente diagrama: Usando TRANSACT/SQL, realice lo siguiente: [email protected] 4 CURSO: BASE DE DATOS 1. 2. 3. 4. 5. 6. Cree la base de datos RENTA2017 de manera estándar Active la base de datos BD_RENTA Valide la existencia de la base de datos. Cree las tablas mostradas en el esquema por defecto dbo Agregue las llaves Primarias (ADD PRIMARY KEY) Agregue las llaves Foráneas, Relaciones (ADD FOREIGN KEY REFERENCES) 7. Asigne de manera correcta los tipos de datos a cada uno de los campos de la tabla. 8. Asigne de manera correcta los valores nulos y no nulos según corresponda. 9. Visualice el diagrama implementado en SQL Server. 3. Caso propuesto: COLEGIO Implementaremos un script de SQL Server que permita crear la base de datos COLEGIO. Para ello se cuenta con el siguiente diagrama: Usando TRANSACT/SQL, realice lo siguiente: 1. 2. 3. 4. 5. 6. Cree la base de datos BD_COLEGIO de manera estándar Active la base de datos BD_COLEGIO Valide la existencia de la base de datos Cree las tablas mostradas Agregue las llaves Primarias (ADD PRIMARY KEY) Agregue las llaves Foráneas, Relaciones (ADD FOREIGN KEY REFERENCES) 7. Asigne de manera correcta los tipos de datos a cada uno de los campos de la tabla. [email protected] 5 CURSO: BASE DE DATOS 8. Asigne de manera correcta los valores nulos y no nulos según corresponda. 9. Visualice el diagrama implementado en SQL Server. 4. Caso propuesto: NEGOCIOS Implementaremos un script de SQL Server que permita crear la base de datos BD_NEGOCIOS. Para ello se cuenta con el siguiente diagrama: Usando TRANSACT/SQL, realice lo siguiente: 1. 2. 3. 4. Cree la base de datos BD_NEGOCIOS de manera estándar Active la base de datos BD_NEGOCIOS Valide su existencia de la base de datos Cree 3 esquemas para la base de datos BD_NEGOCIOS: COMPRAS, VENTAS y RR.HH. 5. Cree las tablas producto, categoría y proveedor dentro del esquema COMPRAS. 6. Cree las tablas Cliente, Venta y Detalle_venta dentro del esquema VENTAS. 7. Cree la tabla usuario dentro del esquema RR.HH. 8. Agregue las llaves Primarias (ADD PRIMARY KEY) 9. Agregue las llaves Foráneas, Relaciones (ADD FOREIGN KEY – REFERENCES) 10. Asigne de manera correcta los tipos de datos a cada uno de los campos de la tabla. 11. Asigne de manera correcta los valores nulos y no nulos según corresponda. 12. Visualice el diagrama implementado en SQL Server. [email protected] 6 CURSO: BASE DE DATOS Caso 02: PRUEBA2017 CREAR EL SEGUNDO ARCHIVO DE DATOS (NDF) DENTRO DE UN GRUPO LLAMADO DATOS, QUE NO EXISTE, PERO SE CREARÁ AUTOMATICAMENTE. CREATE DATABASE PRUEBA2016 ON PRIMARY ( NAME='', FILENAME='', SIZE=, MAXSIZE=, FILEGROWTH= ), AQUÍ DEBE AGREGAR EL FILEGROUP LLAMADO DATOS ( NAME='', FILENAME='', SIZE=, MAXSIZE=, FILEGROWTH= ) LOG ON ( NAME='PRUEBA_LOG', FILENAME='', SIZE=, MAXSIZE=, FILEGROWTH= ) GO [email protected] 7