Você está na página 1de 11

Aula 0001

Transcrição

Retomando as tabelas de Fato já apresentadas anteriormente, vamos construí-las


nesta etapa.

A primeira se liga às dimensões Fábrica, Cliente, Organizacional, Tempo e Produto.


Ainda, possui Faturamento, Unidade Vendida, Quantidade Vendida, Imposto e Custo
Variável como indicadores.

Construa uma nova tabela no SQL Power Architect de nome lógico "Tabela de Fato
001", nome físico "Fato_001" e chave primária "Fato_001_pk". Caso queira, use um
padrão visual diferente das atividades anteriores.

Insira o primeiro código de cada uma das cinco tabelas de dimensão dentro de "Fato
001" com as quais esta se relaciona, repetindo a metodologia adotada na criação de
colunas e marcando-as como chaves primárias.

Abordando os indicadores, crie nova coluna para "Faturamento", escrevendo desta


forma nos dois primeiros campos abertos, ignorando marcação de chave primária, e o
tipo deve ser "DOUBLE" para utilizar numeração decimal em todos estes. Replique o
mesmo processo para os demais já citados.

Da mesma maneira que vinculamos os níveis da dimensão floco-de-neve, faremos aqui.


Use o botão de ação de "Novo relacionamento identificado" para ligar os cinco
primeiros códigos da tabela "Fato 001" aos de cada dimensão relacionada.

Construiremos as demais a seguir.

Aula 0002

Transcrição

Continuaremos com a construção das tabelas de Fato.

A "Fato 002" tem como indicador o Custo do Frete e engloba todas as dimensões,
exceto a Organizacional.

Siga os procedimentos adotados anteriormente para a "Fato 001". Crie uma nova
tabela, depois colunas para códigos marcados como chave primária de Cliente,
Produto, Fábrica e Tempo, e tipo "NVARCHAR" de precisão "50".

Para o indicador, gere nova coluna inserindo "Custo do Frete" e "Custo_Frete" nos
dois primeiros campos, e o tipo deve ser "DOUBLE".

Faça as conexões entre as dimensões através do botão de ação "Novo relacionamento


identificado" da mesma forma.

Repita a metodologia para a tabela de "Fato 003" que se relaciona com Fábrica e
Tempo somente, tendo "Custo Fixo" como indicador também de tipo "DOUBLE".

Da mesma forma, crie a "Fato 004" conectada com Produto, Organizacional, Cliente e
Tempo, e indicador "Meta do Faturamento" de mesmo tipo que o anterior.

Por fim, a tabela "Fato 005" deve ser produzida se relacionando com Produto,
Fábrica e Tempo, com indicador "Meta do Custo".

Salve regularmente seu projeto por segurança.

Caso queira organizar melhor suas tabelas no SQL Power Architect, há um botão de
ação chamado "Leiature Automático" que cumpre essa tarefa, podendo ser ajustado
manualmente para uma melhor visualização.

Desta forma, temos nosso modelo lógico concluído para basear o Data Warehouse.

Aula 0003

Transcrição

Com nosso modelo lógico do Data Warehouse pronto, podemos verificar a lista que se
formou com todas as tabelas criadas. Porém, estas ainda não existem fisicamente.

Primeiro, garanta que o MySQL está ativo. Para gerar os comandos que executam as
tabelas neste banco, vá ao menu de opções do Power Architect para acessar
"Ferramentas > Engenharia Reversa".

Na caixa de diálogo que se abre, selecione "Modelo de Dados", insira "dwsucos" no


campo "database" e finalize em OK. Caso algum erro seja apresentado, busque
corrigir as indicações e repita a operação.

Se estiver tudo correto, uma nova janela aparece para confirmar a ação e apresenta
os comandos de transferência SQL. Confira com atenção as informações, copie e cole
na área de consultas do Heidi SQL. Caso não esteja aparecendo, vá em "Arquivo >
Nova aba para consulta".

Escreva acima dos códigos copiados USE DWSUCOS; para garantir que seja usado e
executado no banco correto, depois salve na pasta "modelologico" dentro de
"treinamento" como "Script_Criacao_DW".

Para executar, selecione todo o bloco e aperte o botão de ação "Executar SQL..." ou
utilize o atalho "F9". Caso apareça algum alerta de falha indicado pelo sistema,
corrija conforme as orientações e siga a metodologia que utilizamos até agora. Se
precisar alterar algum elemento das tabelas, volte ao SQL Power Architect, mude o
que for necessário, salve e repita o processo de Engenharia Reversa para retornar
ao HeidiSQL, continuando o treinamento.

Execute novamente para confirmar as correções e salve. No SQL Power Architect, vá


em "Arquivo > Salvar Projeto Como..." e salve como "Projeto_Criacao_DW" no
diretório "modelologico".

Retorne ao HeidiSQL, clique com o botão direito sobre "dwsucos" na lista de opções
e escolha "Atualizar" para visualizar as tabelas criadas do Data Warehouse ainda
vazias.

Agora devemos identificar as fontes de dados, a origem do dado primário,


eventualmente aplicar transformações e inserir informações dentro das tabelas
baseadas na Matriz Dimensão-Indicador nos próximos passos.

Aula 0004

Transcrição

Nesta etapa, faremos uma revisão do nosso Data Warehouse.

No HeidiSQL, verifique na aba "Banco de Dados: dwsucos" se há o total de doze


tabelas, sendo sete de Dimensão e cinco de Fato.

Clique duas vezes em cada uma e confira se os códigos das tabelas de Dimensão estão
como tipo "VARCHAR" de precisão "50", mesmo quando selecionamos "NVARCHAR" no
momento da criação, lembrando que os primeiros correspondentes à próprias dimensões
devem estar marcados como chave primária. Os descritores devem ser exibidos sempre
como "VARCHAR" de 250.

As tabelas de tipo floco-de-neve devem apresentar um ícone específico que indica


suas conexões de chaves estrangeiras.

Alguns indicadores apresentam tipos diversos de acordo com suas especificidades.


Por exemplo, em "dim_organizacional" os elementos "Esquerda", Direita" e Nível" são
exibidos como "INT" de tamanho "11".

Em "dim_produto", os atributos de tamanho e sabor também são "VARCHAR" de precisão


250.

Já em "dim_tempo", o elemento "Data" é tipo "DATE", enquanto os


"Numero_Dia_Semana", "Numero_Mes", "Numero_Ano", "Nome_Mes", "Numero_Trimestre",
"Nome_Trimestre", "Numero_Semestre" e "Nome_Semestre" são todos "VARCHAR" de
precisão 50, 50, 50, 250, 50, 250, 50 e 250 respectivamente.

Na tabela de Fato 001 temos cinco ligações de chaves primárias com estrangeiras e
cinco indicadores de tipo "DOUBLE".

A "Fato 002" vê quatro conexões e um indicador "Custo_Frete" tipo "DOUBLE" também.


A seguinte se liga a duas dimensões e possui um indicador "Custo_Fixo" de tipo
"DOUBLE".

Em "Fato 004" observamos quatro vínculos e um indicador de mesmo tipo que as


anteriores. Por fim, a última tabela está conectada a três códigos e tem
"Meta_Custo" com mesmo tipo de dados.

Verifique se está tudo de acordo com nossa Matriz Dimensão-Indicador.

Na próxima fase do curso, aplicaremos os dados da empresa em nossas tabelas vazias


através dos processos de ETL e uso da Pentaho Data Integration.
MAOS NA MASSA

Chegou a hora de você pôr em prática o que foi visto na aula. Para isso, execute os
passos listados abaixo.

1) Abra o SQL Power Architect, indo em C:\treinamento\SQL Power Architect e


executando o architect.exe.

2) Abra o projeto de criação do Data Warehouse.

3) Clique com o botão direito do mouse sobre a área vazia, à direita, do SQL Power
Architect e selecione Nova Tabela. Crie uma tabela com os seguintes dados:

Nome da Tabela Lógica: Tabela de Fato 001


Nome da Tabela Física: Fato_001
Nome da chave primária: Fato_001_pk
Cor da tabela: Vermelho
Cantos arredondados: Sim

4) Clique com o botão direito do mouse sobre a tabela criada acima e crie novas
colunas, com as seguintes características:
Nome Lógico Nome Físico Chave Primária Tipo Precisão Permite nulos
Código da Fábrica Cod_Fabrica Sim NVARCHAR 50 Não
Código do Tempo Cod_Tempo Sim NVARCHAR 50 Não
Código do Cliente Cod_Cliente Sim NVARCHAR 50 Não
Código Organizacional Cod_Organizacional Sim NVARCHAR 50 Não
Código do Produto Cod_Produto Sim NVARCHAR 50 Não
Faturamento Faturamento Não DOUBLE - Não
Quantidade Vendida Quantidade_Vendida Não DOUBLE - Não
Imposto Imposto Não DOUBLE - Não
Custo Variável Custo_Variavel Não DOUBLE - Não

5) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical


à direita, e ligue o campo Cod_Fabrica, da tabela Fabrica, com Cod_Fabrica, da
tabela Fato_001.

6) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical


à direita, e ligue o campo Cod_Tempo, da tabela Tempo, com Cod_Tempo, da tabela
Fato_001.

7) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical


à direita, e ligue o campo Cod_Cliente, da tabela Cliente, com Cod_Cliente, da
tabela Fato_001.

8) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical


à direita, e ligue o campo Cod_Organizacional, da tabela Cod_Organizacional, com
Cod_Fabrica, da tabela Fato_001.

9) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical


à direita, e ligue o campo Cod_Produto, da tabela Produto, com Cod_Produto, da
tabela Fato_001.

10) Clique com o botão direito do mouse sobre a área vazia, à direita, do SQL Power
Architect e selecione Nova Tabela. Crie uma tabela com os seguintes dados:

Nome da Tabela Lógica: Tabela de Fato 002


Nome da Tabela Física: Fato_002
Nome da chave primária: Fato_002_pk
Cor da tabela: Vermelho
Cantos arredondados: Sim

11) Clique com o botão direito do mouse sobre a tabela criada acima e crie novas
colunas, com as seguintes características:
Nome Lógico Nome Físico Chave Primária Tipo Precisão Permite nulos
Código da Fábrica Cod_Fabrica Sim NVARCHAR 50 Não
Código do Tempo Cod_Tempo Sim NVARCHAR 50 Não
Código do Cliente Cod_Cliente Sim NVARCHAR 50 Não
Código do Produto Cod_Produto Sim NVARCHAR 50 Não
Custo do Frete Custo_Frete Não DOUBLE - Não

12) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Fabrica, da tabela Fabrica, com Cod_Fabrica, da
tabela Fato_002.

13) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Tempo, da tabela Tempo, com Cod_Tempo, da tabela
Fato_002.

14) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Cliente, da tabela Cliente, com Cod_Cliente, da
tabela Fato_002.

15) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Produto, da tabela Produto, com Cod_Produto, da
tabela Fato_002.

16) Clique com o botão direito do mouse sobre a área vazia, à direita, do SQL Power
Architect e selecione Nova Tabela. Crie uma tabela com os seguintes dados:

Nome da Tabela Lógica: Tabela de Fato 003


Nome da Tabela Física: Fato_003
Nome da chave primária: Fato_003_pk
Cor da tabela: Vermelho
Cantos arredondados: Sim

17) Clique com o botão direito do mouse sobre a tabela criada acima e crie novas
colunas, com as seguintes características:
Nome Lógico Nome Físico Chave Primária Tipo Precisão Permite nulos
Código da Fábrica Cod_Fabrica Sim NVARCHAR 50 Não
Código do Tempo Cod_Tempo Sim NVARCHAR 50 Não
Custo Fixo Custo_Fixo Não DOUBLE - Não

18) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Fabrica, da tabela Fabrica, com Cod_Fabrica, da
tabela Fato_003.

19) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Tempo, da tabela Tempo, com Cod_Tempo, da tabela
Fato_003.

20) Clique com o botão direito do mouse sobre a área vazia, à direita, do SQL Power
Architect e selecione Nova Tabela. Crie uma tabela com os seguintes dados:

Nome da Tabela Lógica: Tabela de Fato 004


Nome da Tabela Física: Fato_004
Nome da chave primária: Fato_004_pk
Cor da tabela: Vermelho
Cantos arredondados: Sim

21) Clique com o botão direito do mouse sobre a tabela criada acima e crie novas
colunas, com as seguintes características:
Nome Lógico Nome Físico Chave Primária Tipo Precisão Permite nulos
Código do Tempo Cod_Tempo Sim NVARCHAR 50 Não
Código do Cliente Cod_Cliente Sim NVARCHAR 50 Não
Código Organizacional Cod_Organizacional Sim NVARCHAR 50 Não
Código do Produto Cod_Produto Sim NVARCHAR 50 Não
Meta do Faturamento Meta_Faturamento Não DOUBLE - Não

22) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Tempo, da tabela Tempo, com Cod_Tempo, da tabela
Fato_004.

23) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Cliente, da tabela Cliente, com Cod_Cliente, da
tabela Fato_004.

24) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Organizacional, da tabela Organizacional, com
Cod_Organizacional, da tabela Fato_004.

25) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Produto, da tabela Produto, com Cod_Produto, da
tabela Fato_004.

26) Clique com o botão direito do mouse sobre a área vazia, à direita, do SQL Power
Architect e selecione Nova Tabela. Crie uma tabela com os seguintes dados:

Nome da Tabela Lógica: Tabela de Fato 005


Nome da Tabela Física: Fato_005
Nome da chave primária: Fato_005_pk
Cor da tabela: Vermelho
Cantos arredondados: Sim

27) Clique com o botão direito do mouse sobre a tabela criada acima e crie novas
colunas, com as seguintes características:
Nome Lógico Nome Físico Chave Primária Tipo Precisão Permite nulos
Código do Tempo Cod_Tempo Sim NVARCHAR 50 Não
Código da Fábrica Cod_Fabrica Sim NVARCHAR 50 Não
Código do Produto Cod_Produto Sim NVARCHAR 50 Não
Meta do Custo Meta_Custo Não DOUBLE - Não

28) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Tempo, da tabela Tempo, com Cod_Tempo, da tabela
Fato_005.

29) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Fabrica, da tabela Fabrica, com Cod_Fabrica, da
tabela Fato_005.

30) Com o mouse, clique na opção Novo Relacionamento identificado, no menu vertical
à direita, e ligue o campo Cod_Produto, da tabela Produto, com Cod_Produto, da
tabela Fato_005.

31) Salve o projeto.


32) Com o projeto finalizado escolha, no menu superior do SQL Power Architect, a
opção Ferramentas --> Engenharia Reversa.

33) Crie na conexão Modelo de Dados, para o banco de dados MySQL e a sua base de
dados. Se houver erros durante a geração dos comandos, pode ser que você tenha
algum campo com nome inválido, por exemplo, um acento.

34) Copie os comandos MySQL que o SQL Power Architect gerou. Em seguida, vá no
HeidiSQL, crie uma nova consulta, e cole os comandos.

35) Coloque, na primeira linha, o comando USE DWSUCOS;.

36) Execute os comandos para criação do Data Warehouse.

37) Os comandos a serem executados para criação do Data Warehouse são os seguintes:

USE DWSUCOS;

CREATE TABLE Dim_Organizacional (


Cod_Organizacional NVARCHAR(50) NOT NULL,
Desc_Organizacional NVARCHAR(250) NOT NULL,
Cod_Pai NVARCHAR(50) NOT NULL,
Esquerda INT NOT NULL,
Direita INT NOT NULL,
Nivel INT NOT NULL,
PRIMARY KEY (Cod_Organizacional)
);

CREATE TABLE Dim_Categoria (


Cod_Categoria NVARCHAR(50) NOT NULL,
Desc_Categoria NVARCHAR(250) NOT NULL,
PRIMARY KEY (Cod_Categoria)
);

CREATE TABLE Dim_Marca (


Cod_Marca NVARCHAR(50) NOT NULL,
Desc_Marca NVARCHAR(250) NOT NULL,
Cod_Categoria NVARCHAR(50) NOT NULL,
PRIMARY KEY (Cod_Marca)
);

CREATE TABLE Dim_Produto (


Cod_Produto NVARCHAR(50) NOT NULL,
Desc_Produto NVARCHAR(250) NOT NULL,
Cod_Marca NVARCHAR(50) NOT NULL,
Atr_Tamanho NVARCHAR(250) NOT NULL,
Atr_Sabor NVARCHAR(250) NOT NULL,
PRIMARY KEY (Cod_Produto)
);

CREATE TABLE Dim_Tempo (


Cod_Tempo NVARCHAR(50) NOT NULL,
Data DATE NOT NULL,
Numero_Dia_Semana NVARCHAR(50) NOT NULL,
Numero_Mes NVARCHAR(50) NOT NULL,
Numero_Ano NVARCHAR(50) NOT NULL,
Nome_Mes NVARCHAR(250) NOT NULL,
Numero_Trimestre NVARCHAR(50) NOT NULL,
Nome_Trimestre NVARCHAR(250) NOT NULL,
Numero_Semestre NVARCHAR(50) NOT NULL,
Nome_Semestre NVARCHAR(250) NOT NULL,
PRIMARY KEY (Cod_Tempo)
);

CREATE TABLE Dim_Cliente (


Cod_Cliente NVARCHAR(50) NOT NULL,
Desc_Cliente NVARCHAR(250) NOT NULL,
Cod_Cidade NVARCHAR(50) NOT NULL,
Desc_Cidade NVARCHAR(250) NOT NULL,
Cod_Estado NVARCHAR(50) NOT NULL,
Desc_Estado NVARCHAR(250) NOT NULL,
Cod_Regiao NVARCHAR(50) NOT NULL,
Desc_Regiao NVARCHAR(250) NOT NULL,
Cod_Segmento NVARCHAR(50) NOT NULL,
Desc_Segmento NVARCHAR(250) NOT NULL,
PRIMARY KEY (Cod_Cliente)
);

ALTER TABLE Dim_Cliente COMMENT 'Tabela da dimensão cliente';

CREATE TABLE Fato_004 (


Cod_Produto NVARCHAR(50) NOT NULL,
Cod_Organizacional NVARCHAR(50) NOT NULL,
Cod_Cliente NVARCHAR(50) NOT NULL,
Cod_Tempo NVARCHAR(50) NOT NULL,
Meta_Faturamento DOUBLE PRECISION NOT NULL,
PRIMARY KEY (Cod_Produto, Cod_Organizacional, Cod_Cliente, Cod_Tempo)
);

CREATE TABLE Dim_Fabrica (


Cod_Fabrica NVARCHAR(50) NOT NULL,
Desc_Fabrica NVARCHAR(250) NOT NULL,
PRIMARY KEY (Cod_Fabrica)
);

ALTER TABLE Dim_Fabrica COMMENT 'Tabela de dimensão Fábrica';

CREATE TABLE Fato_005 (


Cod_Produto NVARCHAR(50) NOT NULL,
Cod_Tempo NVARCHAR(50) NOT NULL,
Cod_Fabrica NVARCHAR(50) NOT NULL,
Meta_Custo DOUBLE PRECISION NOT NULL,
PRIMARY KEY (Cod_Produto, Cod_Tempo, Cod_Fabrica)
);

CREATE TABLE Fato_003 (


Cod_Fabrica NVARCHAR(50) NOT NULL,
Cod_Tempo NVARCHAR(50) NOT NULL,
Custo_Fixo DOUBLE PRECISION NOT NULL,
PRIMARY KEY (Cod_Fabrica, Cod_Tempo)
);

CREATE TABLE Fato_002 (


Cod_Fabrica NVARCHAR(50) NOT NULL,
Cod_Tempo NVARCHAR(50) NOT NULL,
Cod_Cliente NVARCHAR(50) NOT NULL,
Cod_Produto NVARCHAR(50) NOT NULL,
Custo_Frete DOUBLE PRECISION NOT NULL,
PRIMARY KEY (Cod_Fabrica, Cod_Tempo, Cod_Cliente, Cod_Produto)
);

CREATE TABLE Fato_001 (


Cod_Fabrica NVARCHAR(50) NOT NULL,
Cod_Tempo NVARCHAR(50) NOT NULL,
Cod_Cliente NVARCHAR(50) NOT NULL,
Cod_Organizacional NVARCHAR(50) NOT NULL,
Cod_Produto NVARCHAR(50) NOT NULL,
Faturamento DOUBLE PRECISION NOT NULL,
Unidade_Vendida DOUBLE PRECISION NOT NULL,
Quantidade_Vendida DOUBLE PRECISION NOT NULL,
Imposto DOUBLE PRECISION NOT NULL,
Custo_Variavel DOUBLE PRECISION NOT NULL,
PRIMARY KEY (Cod_Fabrica, Cod_Tempo, Cod_Cliente, Cod_Organizacional,
Cod_Produto)
);

ALTER TABLE Fato_001 ADD CONSTRAINT dim_organizacional_fato_001_fk


FOREIGN KEY (Cod_Organizacional)
REFERENCES Dim_Organizacional (Cod_Organizacional)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_004 ADD CONSTRAINT dim_organizacional_fato_004_fk


FOREIGN KEY (Cod_Organizacional)
REFERENCES Dim_Organizacional (Cod_Organizacional)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Dim_Marca ADD CONSTRAINT dim_categoria_dim_marca_fk


FOREIGN KEY (Cod_Categoria)
REFERENCES Dim_Categoria (Cod_Categoria)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Dim_Produto ADD CONSTRAINT dim_marca_dim_produto_fk


FOREIGN KEY (Cod_Marca)
REFERENCES Dim_Marca (Cod_Marca)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_001 ADD CONSTRAINT dim_produto_fato_001_fk


FOREIGN KEY (Cod_Produto)
REFERENCES Dim_Produto (Cod_Produto)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_002 ADD CONSTRAINT dim_produto_fato_002_fk


FOREIGN KEY (Cod_Produto)
REFERENCES Dim_Produto (Cod_Produto)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_004 ADD CONSTRAINT dim_produto_fato_004_fk


FOREIGN KEY (Cod_Produto)
REFERENCES Dim_Produto (Cod_Produto)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_005 ADD CONSTRAINT dim_produto_fato_005_fk


FOREIGN KEY (Cod_Produto)
REFERENCES Dim_Produto (Cod_Produto)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_001 ADD CONSTRAINT dim_tempo_fato_001_fk


FOREIGN KEY (Cod_Tempo)
REFERENCES Dim_Tempo (Cod_Tempo)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_002 ADD CONSTRAINT dim_tempo_fato_002_fk


FOREIGN KEY (Cod_Tempo)
REFERENCES Dim_Tempo (Cod_Tempo)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_003 ADD CONSTRAINT dim_tempo_fato_003_fk


FOREIGN KEY (Cod_Tempo)
REFERENCES Dim_Tempo (Cod_Tempo)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_004 ADD CONSTRAINT dim_tempo_fato_004_fk


FOREIGN KEY (Cod_Tempo)
REFERENCES Dim_Tempo (Cod_Tempo)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_005 ADD CONSTRAINT dim_tempo_fato_005_fk


FOREIGN KEY (Cod_Tempo)
REFERENCES Dim_Tempo (Cod_Tempo)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_001 ADD CONSTRAINT dim_clinete_fato_001_fk


FOREIGN KEY (Cod_Cliente)
REFERENCES Dim_Cliente (Cod_Cliente)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_002 ADD CONSTRAINT dim_clinete_fato_002_fk


FOREIGN KEY (Cod_Cliente)
REFERENCES Dim_Cliente (Cod_Cliente)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_004 ADD CONSTRAINT dim_clinete_fato_004_fk


FOREIGN KEY (Cod_Cliente)
REFERENCES Dim_Cliente (Cod_Cliente)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_001 ADD CONSTRAINT dim_fabrica_fato_001_fk


FOREIGN KEY (Cod_Fabrica)
REFERENCES Dim_Fabrica (Cod_Fabrica)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_002 ADD CONSTRAINT dim_fabrica_fato_002_fk


FOREIGN KEY (Cod_Fabrica)
REFERENCES Dim_Fabrica (Cod_Fabrica)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_003 ADD CONSTRAINT dim_fabrica_fato_003_fk


FOREIGN KEY (Cod_Fabrica)
REFERENCES Dim_Fabrica (Cod_Fabrica)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

ALTER TABLE Fato_005 ADD CONSTRAINT dim_fabrica_fato_005_fk


FOREIGN KEY (Cod_Fabrica)
REFERENCES Dim_Fabrica (Cod_Fabrica)
ON DELETE NO ACTION
ON UPDATE NO ACTION;

Você também pode gostar