Creación de Un Almacén de Datos para La Base de Datos Northwind

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

Nombre: Manuel Aquilino

Apellido: De Los Santos Pérez

Matricula: 2022-0528
Maestro: Francis Reyes
Materia: Electiva 1
Tarea: Creación de un almacén de datos para la base de datos Northwind
-- Entity Designer DDL Script for SQL Server 2005, 2008, 2012 and Azure

-- Date Created: 03/11/2024 19:20:15


-- Generated from EDMX file:
C:\Users\manue\source\repos\NORTHWINDBI\NORTHWINDBI.ConceptualModel\Model\Northwi
ndModel.edmx
SET QUOTED_IDENTIFIER OFF;
GO
USE [DWHNorthwindOrders];GO
IF SCHEMA_ID(N'dbo') IS NULL EXECUTE(N'CREATE SCHEMA [dbo]');GO

-- Dropping existing FOREIGN KEY constraints

-- Dropping existing tables

-- Creating all tables

-- Creating table 'DimCustomersSet' CREATE


TABLE [dbo].[DimCustomersSet] (
[CustomerID] nvarchar(5) NOT NULL,
[CustomerName] nvarchar(40) NOT NULL
);
GO

-- Creating table 'DimEmployeesSet' CREATE


TABLE [dbo].[DimEmployeesSet] (
[EmployeeID] int IDENTITY(1,1) NOT NULL,
[EmployeeName] nvarchar(200) NOT NULL
);
GO

-- Creating table 'DimShippersSet' CREATE


TABLE [dbo].[DimShippersSet] (
[shipperID] int IDENTITY(1,1) NOT NULL,
[shipperName] nvarchar(40) NOT NULL
);
GO

-- Creating table 'DimDatesSet' CREATE


TABLE [dbo].[DimDatesSet] (
[DateKey] int IDENTITY(1,1) NOT NULL,
[Date] datetime NOT NULL, [DateName]
nvarchar(50) NOT NULL,[Month] int NOT
NULL,
[MonthName] nvarchar(50) NOT NULL,
[Quarter] int NOT NULL, [QuarterName]
nvarchar(50) NOT NULL,[Year] int NOT NULL,
[YearName] nvarchar(50) NOT NULL
);
GO

-- Creating table 'FactOrdersSet' CREATE TABLE


[dbo].[FactOrdersSet] (
[OrderNumber] int IDENTITY(1,1) NOT NULL,
[OrderID] int NOT NULL,
[OrderQuantity] int NOT NULL, [CustomerID]
nvarchar(5) NOT NULL,
[shipperID] int NOT NULL, [EmployeeID] int
NOT NULL,[DateKey] int NOT NULL
);
GO

-- Creating table 'FactOrderDetailSet' CREATE TABLE


[dbo].[FactOrderDetailSet] (
[OrderNumber] int IDENTITY(1,1) NOT NULL,
[FactOrdersOrderNumber] int NOT NULL,
[ProductKey] int NOT NULL,
[CategoryKey] nvarchar(max) NOT NULL
);
GO

-- Creating table 'DimProductSet' CREATE TABLE


[dbo].[DimProductSet] (
[ProductKey] int IDENTITY(1,1) NOT NULL,
[CategoryKey] int NOT NULL,
[ProductID] nvarchar(max) NOT NULL,
[ProductName] nvarchar(max) NOT NULL
);
GO

-- Creating table 'DimCategorySet' CREATE


TABLE [dbo].[DimCategorySet] (
[CategoryKey] int IDENTITY(1,1) NOT NULL,
[CategoryID] nvarchar(max) NOT NULL,
[CategoryName] nvarchar(max) NOT NULL
);
GO

-- Creating all PRIMARY KEY constraints

-- Creating primary key on [CustomerID] in table 'DimCustomersSet'ALTER TABLE


[dbo].[DimCustomersSet]
ADD CONSTRAINT [PK_DimCustomersSet]
PRIMARY KEY CLUSTERED ([CustomerID] ASC);
GO

-- Creating primary key on [EmployeeID] in table 'DimEmployeesSet'ALTER TABLE


[dbo].[DimEmployeesSet]
ADD CONSTRAINT [PK_DimEmployeesSet]
PRIMARY KEY CLUSTERED ([EmployeeID] ASC);
GO

-- Creating primary key on [shipperID] in table 'DimShippersSet'ALTER TABLE


[dbo].[DimShippersSet]
ADD CONSTRAINT [PK_DimShippersSet]
PRIMARY KEY CLUSTERED ([shipperID] ASC);
GO

-- Creating primary key on [DateKey] in table 'DimDatesSet'ALTER TABLE


[dbo].[DimDatesSet]
ADD CONSTRAINT [PK_DimDatesSet]
PRIMARY KEY CLUSTERED ([DateKey] ASC);
GO

-- Creating primary key on [OrderNumber] in table 'FactOrdersSet'ALTER TABLE


[dbo].[FactOrdersSet]
ADD CONSTRAINT [PK_FactOrdersSet]
PRIMARY KEY CLUSTERED ([OrderNumber] ASC);
GO

-- Creating primary key on [OrderNumber] in table 'FactOrderDetailSet'ALTER TABLE


[dbo].[FactOrderDetailSet]
ADD CONSTRAINT [PK_FactOrderDetailSet]
PRIMARY KEY CLUSTERED ([OrderNumber] ASC);
GO

-- Creating primary key on [ProductKey] in table 'DimProductSet'ALTER TABLE


[dbo].[DimProductSet]
ADD CONSTRAINT [PK_DimProductSet]
PRIMARY KEY CLUSTERED ([ProductKey] ASC);
GO

-- Creating primary key on [CategoryKey] in table 'DimCategorySet'ALTER TABLE


[dbo].[DimCategorySet]
ADD CONSTRAINT [PK_DimCategorySet]
PRIMARY KEY CLUSTERED ([CategoryKey] ASC);
GO

-- Creating all FOREIGN KEY constraints

-- Creating foreign key on [CustomerID] in table 'FactOrdersSet'ALTER TABLE


[dbo].[FactOrdersSet]
ADD CONSTRAINT [FK_DimCustomersFactOrders]
FOREIGN KEY ([CustomerID])
REFERENCES [dbo].[DimCustomersSet]
([CustomerID])
ON DELETE NO ACTION ON UPDATE NO ACTION;
GO

-- Creating non-clustered index for FOREIGN KEY 'FK_DimCustomersFactOrders'CREATE INDEX


[IX_FK_DimCustomersFactOrders]
ON [dbo].[FactOrdersSet]
([CustomerID]);
GO

-- Creating foreign key on [shipperID] in table 'FactOrdersSet'ALTER TABLE


[dbo].[FactOrdersSet]
ADD CONSTRAINT [FK_DimShippersFactOrders]
FOREIGN KEY ([shipperID])
REFERENCES [dbo].[DimShippersSet]
([shipperID])
ON DELETE NO ACTION ON UPDATE NO ACTION;
GO

-- Creating non-clustered index for FOREIGN KEY 'FK_DimShippersFactOrders'CREATE INDEX


[IX_FK_DimShippersFactOrders]
ON [dbo].[FactOrdersSet]
([shipperID]);
GO

-- Creating foreign key on [EmployeeID] in table 'FactOrdersSet'ALTER TABLE


[dbo].[FactOrdersSet]
ADD CONSTRAINT [FK_DimEmployeesFactOrders]
FOREIGN KEY ([EmployeeID])
REFERENCES [dbo].[DimEmployeesSet]
([EmployeeID])
ON DELETE NO ACTION ON UPDATE NO ACTION;
GO

-- Creating non-clustered index for FOREIGN KEY 'FK_DimEmployeesFactOrders'CREATE INDEX


[IX_FK_DimEmployeesFactOrders]
ON [dbo].[FactOrdersSet]
([EmployeeID]);
GO

-- Creating foreign key on [DateKey] in table 'FactOrdersSet'ALTER TABLE


[dbo].[FactOrdersSet]
ADD CONSTRAINT [FK_DimDatesFactOrders]
FOREIGN KEY ([DateKey])
REFERENCES [dbo].[DimDatesSet]
([DateKey])
ON DELETE NO ACTION ON UPDATE NO ACTION;
GO

-- Creating non-clustered index for FOREIGN KEY 'FK_DimDatesFactOrders'CREATE INDEX


[IX_FK_DimDatesFactOrders]
ON [dbo].[FactOrdersSet]
([DateKey]);
GO

-- Creating foreign key on [FactOrdersOrderNumber] in table 'FactOrderDetailSet'ALTER TABLE


[dbo].[FactOrderDetailSet]
ADD CONSTRAINT [FK_FactOrdersFactOrderDetail]
FOREIGN KEY ([FactOrdersOrderNumber])
REFERENCES [dbo].[FactOrdersSet]
([OrderNumber])
ON DELETE NO ACTION ON UPDATE NO ACTION;
GO

-- Creating non-clustered index for FOREIGN KEY 'FK_FactOrdersFactOrderDetail'CREATE INDEX


[IX_FK_FactOrdersFactOrderDetail]
ON [dbo].[FactOrderDetailSet]
([FactOrdersOrderNumber]);
GO

-- Creating foreign key on [ProductKey] in table 'FactOrderDetailSet'ALTER TABLE


[dbo].[FactOrderDetailSet]
ADD CONSTRAINT [FK_DimProductFactOrderDetail]
FOREIGN KEY ([ProductKey])
REFERENCES [dbo].[DimProductSet]
([ProductKey])
ON DELETE NO ACTION ON UPDATE NO ACTION;
GO

-- Creating non-clustered index for FOREIGN KEY 'FK_DimProductFactOrderDetail'CREATE INDEX


[IX_FK_DimProductFactOrderDetail]
ON [dbo].[FactOrderDetailSet]
([ProductKey]);
GO

-- Creating foreign key on [CategoryKey] in table 'DimProductSet'ALTER TABLE


[dbo].[DimProductSet]
ADD CONSTRAINT [FK_DimCategoryDimProduct]
FOREIGN KEY ([CategoryKey]) REFERENCES
[dbo].[DimCategorySet]
([CategoryKey])
ON DELETE NO ACTION ON UPDATE NO ACTION;
GO
-- Creating non-clustered index for FOREIGN KEY 'FK_DimCategoryDimProduct'CREATE INDEX
[IX_FK_DimCategoryDimProduct]
ON [dbo].[DimProductSet]([CategoryKey]);
GO

-- Script has ended

You might also like