Linha 80: Linha 80:
   as vendas dos produtos em uma só tabela.
   as vendas dos produtos em uma só tabela.


Gerar relatório que mostre:
  Gerar relatório que mostre:
13) Todas as Movimentações do Estoque (IdProduto, IdLocal, Quantidade, Data e Horário
13) Todas as Movimentações do Estoque (IdProduto, IdLocal, Quantidade e Horário :


   select "ESTOQUE"."ID_PRODUTO" as "ID_PRODUTO",
   select ESTOQUE.ID_PRODUTO as ID_PRODUTO,
"ESTOQUE"."ID_LOCAL" as "ID_LOCAL",
  eSTOQUE.ID_LOCAL as ID_LOCAL,
"ESTOQUE"."QUANTIDADECOMPRADA" as "QUANTIDADECOMPRADA",
  eSTOQUE.QUANTIDADECOMPRADA as QUANTIDADECOMPRADA,
"ESTOQUE"."HORARIOCOMPRA" as "HORARIOCOMPRA"
  eSTOQUE.HORARIOCOMPRA as HORARIOCOMPRA
  from "ESTOQUE" "ESTOQUE"
  from ESTOQUE ESTOQUE


14) Todos os produtos com suas Quantidades e Preços
14) Todos os produtos com suas Quantidades e Preços
  select PRODUTO.NOMEPRODUTO as NOMEPRODUTO,
  PRODUTO.PRECOPRODUTO as PRECOPRODUTO,
  PRODUTO.MARCA as MARCA,
  PRODUTO.ID_FORNECEDOR as ID_FORNECEDOR,
  PRODUTO.ID_PRODUTO as ID_PRODUTO,
  PRODUTO.PESO as PESO,
  PRODUTO.COR as COR
  from PRODUTO PRODUTO
15) Toda a movimentação de um dia do Caixa (Id. Venda, Produto, Quantidade, Valor)
15) Toda a movimentação de um dia do Caixa (Id. Venda, Produto, Quantidade, Valor)
  select VENDAS.ID_VENDA as ID_VENDA,
  VENDAS.DATA as DATA,
  VENDAS.HORARIO as HORARIO,
  VENDAS.STATUS as STATUS,
  VENDAS.ID_PARCELAS as ID_PARCELAS,
  VENDAS.NUMEROCAIXA as NUMEROCAIXA,
  VENDAS.CPFCAIXA as CPFCAIXA,
  VENDAPRODUTOS.ID_VENDA as ID_VENDA,
  VENDAPRODUTOS.QUANTIDADE as QUANTIDADE,
  VENDAPRODUTOS.ID_PRODUTO as ID_PRODUTO
  from VENDAPRODUTOS VENDAPRODUTOS,
  VENDAS VENDAS
16) Todo os produtos com saldo de estoque abaixo do mínimo
16) Todo os produtos com saldo de estoque abaixo do mínimo
 
 
 
17) Todas as Vendas ordenadas por Status
17) Todas as Vendas ordenadas por Status
  select   VENDAS.STATUS  as  STATUS ,
  VENDAS.DATA  as  DATA ,
  VENDAS.ID_VENDA  as  ID_VENDA ,
  VENDAS.HORARIO  as  HORARIO ,
  VENDAS.ID_PARCELAS  as  ID_PARCELAS ,
  VENDAS.CPFCAIXA  as  CPFCAIXA ,
  VENDAS.NUMEROCAIXA  as  NUMEROCAIXA 
  from   VENDAS  VENDAS
  order by VENDAS.STATUS
18) Dados do produtos (Nome, Preço, Nome da Marca, Quantidade) ordenados por Nome do Produto
18) Dados do produtos (Nome, Preço, Nome da Marca, Quantidade) ordenados por Nome do Produto
  select   PRODUTO.ID_FORNECEDOR  as  ID_FORNECEDOR ,
  PRODUTO.ID_PRODUTO  as  ID_PRODUTO ,
  PRODUTO.NOMEPRODUTO  as  NOMEPRODUTO ,
  PRODUTO.PRECOPRODUTO  as  PRECOPRODUTO ,
  PRODUTO.MARCA  as  MARCA ,
  PRODUTO.PESO  as  PESO ,
  PRODUTO.COR  as  COR ,
  PRODUTO.CODMARCA  as  CODMARCA 
  from   PRODUTO  PRODUTO
  order by PRODUTO.NOMEPRODUTO
19) Todas as vendas em Aberto (Com parcelas a Vencer)
19) Todas as vendas em Aberto (Com parcelas a Vencer)
 
20) Todos os produtos (Nome, Id, Marca) com seus fornecedores (Nome, email, Fone1) ordenados por Nome do Produto
20) Todos os produtos (Nome, Id, Marca) com seus fornecedores (Nome, email, Fone1) ordenados por Nome do Produto
  select PRODUTO.MARCA as MARCA,
  PRODUTO.NOMEPRODUTO as NOMEPRODUTO,
  PRODUTO.ID_PRODUTO as ID_PRODUTO,
  FORNECEDORES.NOME as NOME,
  FORNECEDORES.EMAIL as EMAIL,
  FORNECEDORES.FONE1 as FONE1
  from FORNECEDORES FORNECEDORES,
  PRODUTO PRODUTO
  order by PRODUTO.NOMEPRODUTO

Edição das 21h41min de 19 de agosto de 2013

Índices



Incluir:

01) Tabela de Marcas relacionada com Produto

 create table marca (
 codmarca int primary key,
 marca varchar2(30) not null
 );
 alter table Produto add codmarca int null;
 ALTER TABLE PRODUTO ADD CONSTRAINT FK_marca FOREIGN KEY (codmarca) REFERENCES  marca (codmarca) 


02 e 04) Tabela de Cep relacionada com Fornecedor e REgistroCaixa

 create table CEP (
 codCEP int primary key,
 CEP int not null
 );
 alter table Fornecedores add codCEP int null;
 alter table RegistroCaixa add codCEP int null;
 ALTER TABLE Fornecedores ADD CONSTRAINT FK_cep FOREIGN KEY (codcep) REFERENCES cep (codcep) 
 ALTER TABLE RegistroCaixa ADD FOREIGN KEY  (codcep) REFERENCES  cep (codcep) ; 


03) E popular novos campos em Caixa: Data, Hora e Valor em Dinheiro

   Alter table Caixa add data datetime null;
   Alter table Caixa add hora datetime null;
   Alter table Caixa add valor number null;
  INSERT INTO Caixa (numerocaixa, cpfcaixa, data, hora, valor)
  VALUES (12, 2345678, 22/12/2012 , 1414 , 455);
  
Inserir:


05) Um produto para dois fornecedores diferentes. Ex: Bombril para Forn A e Forn B

 Antes de tudo , precisei desativar o Constraint Produtos_pk para usar 2 fornecedores para 1 produto.
 

06) Na Tabela Produtos Comprados, duas compras para o mesmo produto

  


07) Um novo produto em Estoque e manter dado anterior

  

08) Um novo campo: LimitiMinimo na Tabela Produtos

 Alter table Produto add LimiteMinimo number null;

Excluir:

09) Um fornecedor qualquer da Tabela Fornecedores

 DELETE FROM fornecedores WHERE ID_fornecedor=1;

10) Uma venda qualquer da Tabela VendaProduto

 DELETE FROM vendaproduto WHERE ID_venda=123;


11) Porque Local em Estoque e LocalMercadoria em Local?

 Nao tem necessidade portanto sera deletado :
 Alter table Estoque drop column Local;

12) Explicar para que serve a Tabela VendaProduto.

   Coloquei a tabela Venda produto pois acho que em um sistema de banco de dados que tem como foco as vendas dos produtos 
 feitas pelos caixas , terá muitos dados a serem guardados em uma só tabela , por isso dei exclusividade para 
 as vendas dos produtos em uma só tabela.
 Gerar relatório que mostre:

13) Todas as Movimentações do Estoque (IdProduto, IdLocal, Quantidade e Horário :

 select ESTOQUE.ID_PRODUTO as ID_PRODUTO,
 eSTOQUE.ID_LOCAL as ID_LOCAL,
 eSTOQUE.QUANTIDADECOMPRADA as QUANTIDADECOMPRADA,
 eSTOQUE.HORARIOCOMPRA as HORARIOCOMPRA
 from ESTOQUE ESTOQUE

14) Todos os produtos com suas Quantidades e Preços

 select	 PRODUTO.NOMEPRODUTO as NOMEPRODUTO,
 PRODUTO.PRECOPRODUTO as PRECOPRODUTO,
 PRODUTO.MARCA as MARCA,
 PRODUTO.ID_FORNECEDOR as ID_FORNECEDOR,
 PRODUTO.ID_PRODUTO as ID_PRODUTO,
 PRODUTO.PESO as PESO,
 PRODUTO.COR as COR 
 from	 PRODUTO PRODUTO

15) Toda a movimentação de um dia do Caixa (Id. Venda, Produto, Quantidade, Valor)

 select	 VENDAS.ID_VENDA as ID_VENDA,
 VENDAS.DATA as DATA,
 VENDAS.HORARIO as HORARIO,
 VENDAS.STATUS as STATUS,
 VENDAS.ID_PARCELAS as ID_PARCELAS,
 VENDAS.NUMEROCAIXA as NUMEROCAIXA,
 VENDAS.CPFCAIXA as CPFCAIXA,
 VENDAPRODUTOS.ID_VENDA as ID_VENDA,
 VENDAPRODUTOS.QUANTIDADE as QUANTIDADE,
 VENDAPRODUTOS.ID_PRODUTO as ID_PRODUTO 
 from	 VENDAPRODUTOS VENDAPRODUTOS,
 VENDAS VENDAS

16) Todo os produtos com saldo de estoque abaixo do mínimo


17) Todas as Vendas ordenadas por Status

 select	  VENDAS.STATUS  as  STATUS ,
 VENDAS.DATA  as  DATA ,
 VENDAS.ID_VENDA  as  ID_VENDA ,
 VENDAS.HORARIO  as  HORARIO ,
 VENDAS.ID_PARCELAS  as  ID_PARCELAS ,
 VENDAS.CPFCAIXA  as  CPFCAIXA ,
 VENDAS.NUMEROCAIXA  as  NUMEROCAIXA  
 from	  VENDAS   VENDAS 
 order by VENDAS.STATUS 

18) Dados do produtos (Nome, Preço, Nome da Marca, Quantidade) ordenados por Nome do Produto

 select	  PRODUTO.ID_FORNECEDOR  as  ID_FORNECEDOR ,
 PRODUTO.ID_PRODUTO  as  ID_PRODUTO ,
 PRODUTO.NOMEPRODUTO  as  NOMEPRODUTO ,
 PRODUTO.PRECOPRODUTO  as  PRECOPRODUTO ,
 PRODUTO.MARCA  as  MARCA ,
 PRODUTO.PESO  as  PESO ,
 PRODUTO.COR  as  COR ,
 PRODUTO.CODMARCA  as  CODMARCA  
 from	  PRODUTO   PRODUTO 
 order by PRODUTO.NOMEPRODUTO 

19) Todas as vendas em Aberto (Com parcelas a Vencer)


20) Todos os produtos (Nome, Id, Marca) com seus fornecedores (Nome, email, Fone1) ordenados por Nome do Produto

 select	 PRODUTO.MARCA as MARCA,
 PRODUTO.NOMEPRODUTO as NOMEPRODUTO,
 PRODUTO.ID_PRODUTO as ID_PRODUTO,
 FORNECEDORES.NOME as NOME,
 FORNECEDORES.EMAIL as EMAIL,
 FORNECEDORES.FONE1 as FONE1 
 from	 FORNECEDORES FORNECEDORES,
 PRODUTO PRODUTO
 order by PRODUTO.NOMEPRODUTO