Академический Документы
Профессиональный Документы
Культура Документы
Passo 1.1.1 - Elaborar um script com os comandos SQL - DDL para criar o banco de dados do
sistema SIG.
O seguinte comando cria o database de nome ATPS_SIG:
CREATE DATABASE ATPS_SIG;
INT,
nome
VARCHAR(50)
cpf
CHAR(12),
-- formato '999999999-99'
rg
VARCHAR(11),
-- formato '999999999-9'
endereco
VARCHAR(50),
cidade
VARCHAR(30),
uf
CHAR(2),
fone
VARCHAR(12),
-- formato '(ll)nnnnnnnn'
celular
VARCHAR(13),
-- formato '(ll)nnnnnnnnn'
VARCHAR(50),
datanascimento DATE,
genero
CHAR(1),
);
INT,
nome
cpf
CHAR(12),
-- formato '999999999-99'
rg
VARCHAR(11),
-- formato '999999999-9'
ctps
VARCHAR(20),
cargo
VARCHAR(30),
datanascimento
DATE,
dataadmissao
DATE,
datademissao
DATE,
ativo
TINYINT,
comissao
NUMERIC(11,2),
PRIMARY KEY(idfuncionario)
);
idproduto
INT,
descricao
VARCHAR(50)
precovenda
NUMERIC(11,2),
precocompra
NUMERIC(11,2),
marca
INT,
tipo
INT,
PRIMARY KEY(idproduto) );
INT,
cliente_venda
INT,
data
DATE,
hora
TIME,
valortotal
NUMERIC(11,2),
funcionario_venda INT,
PRIMARY KEY(idvenda),
CONSTRAINT cliente_venda FOREIGN KEY(cliente_venda) REFERENCES cliente
(idcliente),
CONSTRAINT func_venda
funcionario(idfuncionario)
);
iditemvenda
INT,
venda_itemvenda
INT,
produto_itemvenda
INT,
qtde
NUMERIC(7),
valorunitario
NUMERIC(9,2),
valordesconto
NUMERIC(11,2),
valortotal
NUMERIC(15,2),
);
Passo 1.1.3 Elaborar um script contendo os comandos SQL para inserir dados nas tabelas.
Deve conter pelo menos 5 ocorrncias por tabela. Os dados da tabela funcionrios devem ser
dos alunos do grupo, com os campos NOME: nome do aluno e RG: RA do aluno, demais
dados podem ser fictcios.
Cdigo cliente:
INSERT INTO cliente (idcliente, nome, cpf, rg, endereco, cidade, uf, fone,
celular, email, datanascimento, genero)
VALUES
( 1, 'Luiz Shig', '123456789-12', '987654321-0', 'Av Morro Velho, 100',
'Sao Paulo', 'SP',
'(11)12345678','(11)987651122','luizshig@uniban.com.br',
'1980/01/01','1'),
( 2, 'Antonio da Silva','333456789-12', '999654321-0', 'Av Sobe Desce,
100', 'Sao Paulo', 'SP',
'(11)12345666','(11)987653333','antsilv@uniban.com.br',
'1985/04/01','1'),
( 3, 'Watson Oliveira', '123444789-12', '987666321-0', 'Rua Pinheiro
Velho', 'Campo Limpo', 'SP',
'(11)12345666','(11)987654444','watson@uniban.com.br',
'1995/01/25','2'),
( 4, 'Berenice Almeida', '122256789-12', '987643221-0', 'Av Sem Saida, 10',
'Bras', 'SP',
'(11)12345678','(11)987651122','b.almeida@uniban.com.br',
'1980/01/01','3'),
( 5, 'Fernanda de Lima', '126546789-12', '887754321-0', 'Av Fim do Mundo,
100', 'Rocinha', 'RJ',
'(11)12235678','(11)987665522','flima@aisa.com.br', '1975/11/22','4');
Antes do comando:
Depois do comando:
Cdigo funcionario:
INSERT INTO funcionario (idfuncionario, nome, cpf, rg, ctps, cargo,
datanascimento, dataadmissao, datademissao, ativo, comissao )
VALUES
(101, 'Vinicius Mendes', '192837465-01', '42000683-4', '0123456-001-SP',
'gerente', '1970/12/30', '2013/10/27',null,1,null),
(102, 'Fernando Schmidt','192888465-01', '420177446-4', '987654-001-SP',
'Adm', '1970/12/11', '2013/10/01',null,1,null),
(103, 'Gleisa Damario', '192227465-01', '373067758-5', '0123336-001-SP',
'Secretaria', '1985/01/01', '2012/10/27',null,1,null),
(104, 'Vinicius Mariano', '194443365-01', '424182962-9', '01234566-001-SP',
'Tecnico', '1985/01/31', '2012/01/05',null,1,null),
(105, 'Jos Oliveira', '192227465-01', '998877445-1', '0123336-001-SP',
'Analista', '1988/07/01', '2012/10/20',null,1,null)
Antes do comando:
Depois do comando:
Cdigo produto:
INSERT INTO
produto
Antes do comando:
Depois do comando:
Cdigo venda:
INSERT INTO venda (idvenda, cliente_venda, data, hora, valortotal,
funcionario_venda)
VALUES(501,1, '2013/10/25', '10:00:01', 120.00, 101),
(502,1, '2013/12/20', '05:00:01', 230.00, 101),
(503,3, '2013/10/22', '10:00:01', 20.00, 101),
(504,2, '2012/10/25', '7:00:01', 100.00, 102),
(505,4, '2011/10/21', '10:00:01', 350.00, 101),
(506,4, '2013/05/25', '10:00:01', 340.00, 102),
(507,5, '2013/10/01', '10:10:00', 25.00, 102),
(508,5, '2013/10/25', '10:00:01', 120.00, 103),
(509,1, '2011/11/25', '10:30:01', 80.00, 104);
Antes do comando:
Depois do comando:
Cdigo itemvenda:
INSERT INTO itemvenda
Antes do comando:
Depois do comando:
Passo 1.2.1 - Consulta Cliente. Exibir os campos: nome, cidade, UF, idade, gnero. O s
registros devem estar ordenados por nome. Filtros da consulta: cidade.
Resultado:
Passo 1.2.2 - Consulta funcionarios. Exibir os campos: nome, cargo, idade, data
de admisso, valor da comisso. Os registros devem estar ordenados por cargo. Filtros da
consulta: ativo
Resultado:
Passo 1.2.3 - Consulta vendas por funcionario - Exibir os campos: nome do funcionrio, valor
da venda. Os registros devem estar ordenados por valor da venda, sendo os maiores valores
exibidos primeiro. Filtros da consulta: dia da venda.
Resultado:
Passo 1.2.4 - Consulta vendas por produtos. Exibir os campos: descrio do produto, preo
de venda do produto, valor total de vendas para produto. Os registros devem estar ordenados
pelo valor total das vendas, sendo os valores maiores nos primeiros registros. Filtros da
consulta: ms em que foram realizadas as vendas.
Resultado:
Passo 1.2.5 - Consulta vendas por cliente. Exibir o nome do cliente, cidade, quantidade total
de vendas, valor total de vendas. A consulta deve exibir todos os clientes, inclusive aqueles
que no possuem registros de venda. Os registros devem estar ordenados por nome e cidade.
Filtros da consulta: ms em que foram realizada as vendas.
Resultado:
Passo 1.2.6 - Atualizao dos dados do cliente. alterar os dados de endereo para: Estrada do
Campo Limpo, 123 cidade: So Paulo e UF: SP. Listar todos os campo da tabela Clientes para
mostrar a atualizao realizada.
Antes:
Depois:
10
Passo 1.2.7 - Insero de dados do cliente. Inserir um novo cliente com os seus dados. Listar
todas as linhas e colunas da tabela para evidenciar a execuo da insero.
Antes:
Depois:
Passo 1.2.8 - Excluso de dados do cliente. Excluir o cliente inserido na etapa anterior. Listar
todas as linhas e colunas da tabela para evidenciar a execuo
Resultado:
11
Passo 1.2.9 - Consulta vendas e produtos. Relacionar os produtos que compem as vendas
efetuadas no ano corrente, exibindo: identificao da venda, identificao do funcionrio que
efetuou a venda, identificao do produto, descrio do produto, quantidade, preo unitrio e
preo total.
SELECT a.idvenda, a.funcionario_venda, b.idproduto, b.descricao, c.qtde,
c.valorunitario, c.valortotal FROM venda a, produto b, itemvenda c
WHERE a.idvenda = c.venda_itemvenda AND b.idproduto = c.produto_itemvenda
AND a.data BETWEEN '2013-01-01' AND '2013-12-31'
Resultado:
Passo 1.2.10 - Consulta vendas produtos e clientes. Relacionar as Vendas de Clientes com
seus respectivos produtos, informando Identificao do Cliente, nome do Cliente, Unidade da
Federao, Ident. Venda, data Venda, Ident. Produto, Nome do Produto.
Resultado:
12
Concluso
Com esse trabalho, conclumos que um banco de dados bem organizado fundamental, tanto
no momento de interpret-lo como em um desenvolvimento de um sistema.
Este trabalhou tratou de temas relacionados a otimizao de consultas, o que muito
importante, pois atualmente, no podemos nos preocupar somente com segurana e
confiabilidade de dados, mas tambm devemos lembrar de fatores indispensveis como
desempenho, pois um banco de dados otimizado fundamental para qualquer empresa.
Alm disso, o ATPS foi uma tima ferramenta de aprendizado pois nos incentivou a praticar e
tambm a pesquisarmos alm do aprendido em sala de aula.
13