• Nenhum resultado encontrado

Fundamentos de Banco de Dados

N/A
N/A
Protected

Academic year: 2022

Share "Fundamentos de Banco de Dados"

Copied!
17
0
0

Texto

(1)

Fundamentos

de Banco de Dados

Aula 07

(2)

Agenda

• Execução dos exercícios propostos na aula anterior

• Criação de banco de dados de Pedidos seguindo modelo lógico

• Entrar com dados nas tabelas

(3)

Tarefa do DBA

Modelo Lógico Modelo Físico

Banco de Dados Access, Oracle,

SQL Server...

Documentos (Modelagem)

SQL

(4)

Modelo Lógico

Cliente Código Nome

1 LOJA DO SEU MANUEL

2 LOJA DO SEU JOAQUIM

Itens do Pedido

Pedido Número Ítem Qtde Valor Total Produto Código 1 1 3 30,00 001 1 2 4 20,00 005 1 3 10 15,00 002 2 1 3 14,40 003 2 2 20 30,00 002 3 1 3 30,00 001 3 2 10 15,00 002 3 3 3 14,40 003 3 4 10 8,50 004

Pedido

Número Emissao Vencto Valor Total Cliente

código

1 10/05/2011 10/06/2011 65,00 1

2 11/05/2011 11/06/2011 44,40 2

3 12/05/2011 12/06/2011 67,90 1

Produto

Código Descrição Valor Unitário Código Tipo

001 Bola 10,00 B

002 Caneta 1,50 E

003 Copo 4,80 C

004 Borracha 0,85 E

005 Boné 5,00 R

Tipo_Produto Código Descrição

B Brinquedo

C Cozinha

E Estudo

R Roupa

(5)

Determinando as chaves primárias simples

• No comando CREATE TABLE, utilizar o sufixo PRIMARY KEY na definição do campo da tabela

• Chaves primárias não permitem dados duplicados nem valores nulo

Determinando as chaves primárias compostas

• ALTER TABLE <tabela>

ADD PRIMARY KEY (campo1, campo2, campoN )

(6)

Tabela: CLIENTE

CREATE TABLE Clientes (

cliCodigo INT PRIMARY KEY, cliNome TEXT(50) NOT NULL

)

Cliente Código Nome

1 LOJA DO SEU MANUEL

2 LOJA DO SEU JOAQUIM

(7)

Tabela: TIPO DE PRODUTO

Tipo_Produto Código Descrição

B Brinquedo

C Cozinha

E Estudo

R Roupa

CREATE TABLE ProdutosTipo (

tpCodigo TEXT(1) PRIMARY KEY, tpDescricao TEXT(20) NOT NULL

)

(8)

Tabela: PRODUTO

Produto

Código Descrição Valor Unitário Código Tipo 001 Bola 10,00 B

002 Caneta 1,50 E 003 Copo 4,80 C 004 Borracha 0,85 E 005 Boné 5,00 R

CREATE TABLE Produtos (

prdCodigo INT PRIMARY KEY, prdDescricao TEXT(30) NOT NULL,

prdValorUnit CURRENCY NOT NULL,

tpCodigo TEXT(1) NOT NULL

)

(9)

Tabela: PEDIDO

Pedido

Número Emissao Vencto Valor Total

Cliente código

1 10/05/2011 10/06/2011 65,00 1

2 11/05/2011 11/06/2011 44,40 2

3 12/05/2011 12/06/2011 67,90 1

CREATE TABLE Pedidos (

pedNumero INT PRIMARY KEY,

pedDtEmissao DATE NOT NULL, pedDtVencto DATE NOT NULL, pedValorTotal CURRENCY NOT NULL,

cliCodigo INT NOT NULL

(10)

Tabela: ÍTENS do PEDIDO

Itens do Pedido

Pedido Número

Ítem Qtde Valor Total

Produto Código

1 1 3 30,00 001

1 2 4 20,00 005

1 3 10 15,00 002

2 1 3 14,40 003

2 2 20 30,00 002

3 1 3 30,00 001

3 2 10 15,00 002

3 3 3 14,40 003

3 4 10 8,50 004

CREATE TABLE PedidosItens (

pedNumero INT ,

pdiItem BYTE ,

pdiQtde SMALLINT NOT NULL,

pdiValorTotal CURRENCY NOT NULL,

prdCodigo INT NOT NULL

)

ALTER TABLE PedidosItens ADD PRIMARY KEY ( pedNumero, pdiItem )

(11)
(12)

Inserindo dados nas tabelas

• Para inserir dados em uma tabela utilizamos o comando INSERT INTO

INSERT INTO <tabela>

[( coluna1, coluna2, colunaN )]

VALUES

( valor1, valor2, valorN )

(13)

Inserindo dados de Cliente

INSERT INTO Clientes (cliCodigo, cliNome ) VALUES (1 , ‘LOJA DO SEU MANUEL’ )

INSERT INTO Clientes (cliCodigo, cliNome ) VALUES ( 2 , ‘LOJA DO SEU JOAQUIM’ )

Cliente Código Nome

1 LOJA DO SEU MANUEL

2 LOJA DO SEU JOAQUIM

(14)

Inserindo dados de Tipo de Produto

Tipo_Produto

Código Descrição

B Brinquedo

C Cozinha

E Estudo

R Roupa

INSERT INTO ProdutosTipo (tpCodigo, tpDescricao) VALUES ( ‘B’ , ‘BRINQUEDO’ )

INSERT INTO ProdutosTipo (tpCodigo, tpDescricao) VALUES ( ‘C’ , ‘COZINHA’ )

INSERT INTO ProdutosTipo (tpCodigo, tpDescricao) VALUES ( ‘E’ , ‘ESTUDO’ )

INSERT INTO ProdutosTipo (tpCodigo, tpDescricao) VALUES ( ‘R’ , ‘ROUPA’ )

(15)

Inserindo dados de Produtos

Produto

Código Descrição Valor Unitário Código Tipo

001 Bola 10,00 B

002 Caneta 1,50 E

003 Copo 4,80 C

004 Borracha 0,85 E

005 Boné 5,00 R

INSERT INTO Produtos VALUES ( 1 , ‘Bola’ , 10 , ‘B’ )

INSERT INTO Produtos VALUES ( 2 , ‘Caneta’ , 1.5 , ‘E’ ) INSERT INTO Produtos VALUES ( 3 , ‘Copo’ , 4.8 , ‘C’ )

INSERT INTO Produtos VALUES ( 4 , ‘Borracha’ , 0.85 , ‘E’ )

INSERT INTO Produtos VALUES ( 5 , ‘Boné’ , 5 , ‘R’ )

(16)

Inserindo dados de Pedidos

Pedido

Número Emissao Vencto Valor Total

Cliente código 1 10/05/2011 10/06/2011 65,00 1 2 11/05/2011 11/06/2011 44,40 2 3 12/05/2011 12/06/2011 67,90 1

INSERT INTO Pedidos VALUES ( 1, ‘2011-05-10’ , ‘2011-06-10’ , 65 , 1 )

INSERT INTO Pedidos VALUES ( 2, ‘2011-05-11’ , ‘2011-06-11’ , 44.4 , 2 )

INSERT INTO Pedidos VALUES ( 1, ‘2011-05-12’ , ‘2011-06-12’ , 67.9 , 1 )

(17)

Inserindo dados de Ítens de Pedido

Itens do Pedido

Pedido Número Ítem Qtde Valor Total Produto Código

1 1 3 30,00 001

1 2 4 20,00 005

1 3 10 15,00 002

2 1 3 14,40 003

2 2 20 30,00 002

3 1 3 30,00 001

3 2 10 15,00 002

3 3 3 14,40 003

3 4 10 8,50 004

INSERT INTO PedidosItens VALUES ( 1, 1, 3, 30, 1 )

INSERT INTO PedidosItens VALUES ( 1, 2, 4, 20, 5 )

INSERT INTO PedidosItens VALUES ( 1, 3, 10, 15, 2 )

INSERT INTO PedidosItens VALUES ( 2, 1, 3, 14.4, 3 )

INSERT INTO PedidosItens VALUES ( 2, 2, 20, 30, 2 )

INSERT INTO PedidosItens VALUES ( 3, 1, 3, 30, 1 )

INSERT INTO PedidosItens VALUES ( 3, 2, 10, 15, 2 )

Referências

Documentos relacionados

O prazo de duração do aviso prévio, dado pelas empresas a seus empregados, será de 30 (trinta) dias, acrescido de mais 05 (cinco) dias para cada ano de serviço prestado, ou

Neste capítulo, aplica-se o modelo formal de particionamento apresentado na seção 2.12 do Capítulo anterior a um exemplo, são apresentadas as técnicas usadas

Doze animais foram reagentes ao teste de IDGA sendo que, sete dos animais positivos pertenciam à raça Santa Inês, quatro não apresentavam raça definida (SRD) e

indemnizações resultantes de eventos danosos desconhecidos das partes e ocorridos durante o período de vigência da apólice, ainda que a reclamação seja apresentada no ano

Com base numa metodologia de investigação-ação, o EFIB visa implementar, nas escolas do ensino básico, projetos de aprendizagem orientados para o desenvolvimento de

conflitos cognitivos – percepção de que as situações de aprendizagem eram.. Relatou-se que era necessário rever e refletir sobre resultados alcançados e que os seminários exigiam

Uma vez que esse cenário se refere ao campo da Ciência da Informação como um todo, não é difícil supor que acabe acarretando conseqüências também para a sub-área de

Ao nível do Pré-Escolar na José Tagarro, está-se a trabalhar no sentido de obter autorização para mais uma sala no Cartaxo, informou.--- --- ---Também informou que já foi aberto