(4 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 2: Linha 2:
<br>
<br>


  create index PRODUTO_IDX on PRODUTO ("ID_PRODUTO")


Incluir:
  create index VENDAPRODUTOS_IDX on "VENDAPRODUTOS" ("ID_VENDA")
01) Tabela de Marcas relacionada com Produto


   create table marca (
   create index LOCAL_IDX on "VENDAS" ("DATA","HORARIO")
  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 index REGISTROCAIXA_IDX on "REGISTROCAIXA" ("CPFCAIXA")
 
   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.
  [[Arquivo:2forn.jpg]]
 
06) Na Tabela Produtos Comprados, duas compras para o mesmo produto
 
  [[Arquivo:2compras.jpg]]
 
 
07) Um novo produto em Estoque e manter dado anterior
 
  [[Arquivo:estoquee.jpg]]
 
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

Edição atual tal como às 22h18min de 19 de agosto de 2013

Índices


 create index PRODUTO_IDX on PRODUTO ("ID_PRODUTO")
 create index VENDAPRODUTOS_IDX on "VENDAPRODUTOS" ("ID_VENDA")
 create index LOCAL_IDX on "VENDAS" ("DATA","HORARIO")
 create index REGISTROCAIXA_IDX on "REGISTROCAIXA" ("CPFCAIXA")