“Práctica 2” Bases de Datos para la Toma de Decisiones
Enviado por DanielaIberri • 8 de Febrero de 2018 • Práctica o problema • 1.730 Palabras (7 Páginas) • 223 Visitas
[pic 1]
“Práctica 2”
Bases de Datos para la Toma de Decisiones
Maestro: Victor Hugo Ortega
Alumno: Daniela Iberri León
Expediente: ES698057
08 de febrero de 2018
Introducción
Con ayuda de la base de datos transaccional de una empresa de autobuses generada previamente en la cual se integran tablas de catálogos y de transacción, el objetivo de esta práctica es generar transformarla en una base de datos dimensional utilizando la estructura de estrella. Y crear un stored procedure para llevar a cabo la carga de datos requeridos de la base de datos transaccional a la dimensional.
Captura de pantalla del modelo transaccional.
[pic 2]
Captura de pantalla del diagrama transaccional con la categorización de las tablas para generar los posibles modelos dimensionales.
[pic 3]
Captura de pantalla del modelo dimensional que apoye el proceso de ventas.
[pic 4]
Código SQL documentado para tomar datos de la base de datos transaccional (AUTOBUS.BAK) e insertarlos en la base de datos dimensional (AUTOBUSDIMTUNÚMERODEEXPEDIENTE.BAK).
CREATE PROCEDURE SP_poblado_AutobusDim698057
AS
delete [AutobusDim698057].[dbo].[Fact-Venta];
delete [AutobusDim698057].[dbo].[Folio];
delete [AutobusDim698057].[dbo].[Tiempo];
delete [AutobusDim698057].[dbo].[Cliente];
delete [AutobusDim698057].[dbo].[Empleados];
--Cliente
INSERT INTO [AutobusDim698057].[dbo].[Cliente]
SELECT [IDCliente],
[Nombre],
[FechaNacimiento],
[Genero],
[RFC]
FROM [Practica2 Autobus].[dbo].[Cliente]
--select * from AutobusDim698057 .dbo. cliente
--Empleados
INSERT INTO [AutobusDim698057].[dbo].[Empleados]
SELECT IDEmpleado,
Nombre,
App,
Apm,
Genero
FROM [Practica2 Autobus].dbo.Empleados
--select * from AutobusDim698057 .dbo. empleados
--Folio
INSERT INTO [AutobusDim698057].[dbo].[Folio]
SELECT [Folio]
FROM [Practica2 Autobus].dbo.[Venta]
--select * from AutobusDim698057 .dbo. folio
--Tiempo
INSERT INTO [AutobusDim698057].[dbo].[Tiempo]
SELECT DISTINCT CAST(
SUBSTRING(CONVERT(varchar, Fecha, 126),0,5)+
SUBSTRING(CONVERT(varchar, Fecha, 126),6,2)+
SUBSTRING(CONVERT(varchar, Fecha, 126),9,2) AS INT) IDFecha,
CONVERT ( varchar, Fecha, 126) AS Fecha,
SUBSTRING ( CONVERT ( varchar, Fecha, 126),0,5) as Anio,
SUBSTRING (CONVERT ( varchar, Fecha, 126),6,2) as Mes,
SUBSTRING (CONVERT ( varchar, Fecha, 126),9,2) as Dia,
CASE SUBSTRING ( CONVERT( varchar, Fecha, 126),6,2)
...