Você está na página 1de 23

BIBLIOGRAFIA DE BANCO DE DADOS

Livros-texto (entre muitos outros): Banco de Dados, Uma Viso Prtica,Felipe Machado e Mauricio Abreu, Ed. rica, 1999. Modelagem Conceitual e Projeto de Banco de Dados, Paulo Cougo, Ed. Campus, 1997.

INTRODUO CONCEITOS BSICOS


Conjunto de dados sobre o qual uma comunidade de usurios realiza operaes de recuperao e atualizao. Um BD representa algum aspecto do mundo real, chamado mini-mundo ou universo de discurso. As mudanas no mini-mundo so refletidas no banco de dados.

Mini-mundo

Banco de Dados Aplicaes

CONCEITOS BSICOS
Um banco de dados computadorizado pode ser criado e mantido por um grupo de programas de aplicao escritos especificamente para aquela tarefa ou por um SISTEMA DE GERNCIA DE BANCOS DE DADOS (SGBD). Um SGBD uma coleo de programas de propsito geral que facilita o processo de definir, construir e manipular bancos de dados para vrias aplicaes. Definir um banco de dados significa especificar os tipos de dados a serem armazenados juntamente com uma descrio detalhada de cada tipo. Construir o banco de dados o processo de armazenar os dados em algum meio de armazenamento controlado pelo SGBD. Manipular um banco de dados compreende certas funes como consultar o banco de dados para recuperar dados especficos, atualizar o banco de dados para refletir mudanas percebidas no mini-mundo e produzir relatrios a partir dos dados. O banco de dados e o SGBD juntos so chamados genericamente de SISTEMA DE BANCOS DE DADOS.

SISTEMA DE BANCO DE DADOS


Usurios / Programadores Sistema de BD Consultas / Programas de Aplicao

SGBD Software para processar consultas / programas

Software para acessar dados armazenados

Definio do BD (Meta-dados)

BD armazenado

EXEMPLO DE BANCO DE DADOS


Aluno Nome Jos Antnio Nome Delphi Estrutura de Dados Matemtica Discreta Banco de Dados Nmero 17 8 Nmero INF1310 INF3320 MAT2410 INF3380 Crditos 4 4 3 3 N Pr-Req INF3320 MAT2410 INF1310 N Curso MAT2410 INF1310 MAT2410 INF1310 INF3320 INF3380 Grau B C A A B A rea INF INF Dept INF INF MAT INF

Disciplina

Pr-Requisito

N Curso INF3380 INF3380 INF3320 N Aluno 17 17 8 8 8 8

Histrico-Escolar

SISTEMA DE INFORMAO
Sistema de informao: Dados; SGBD; O hardware e o sistema operacional; As pessoas que usam e administram os dados; Os programas de aplicao que acessam e atualizam os dados; Os programadores que desenvolvem essas aplicaes.

LINGUAGEM SQL

O nome "SQL" significa "Structured Query Language" - Linguagem Estruturada de Pesquisa. Essa linguagem, de grande utilizao, teve seus fundamentos no modelo relacional de Codd (l970). Sua primeira verso recebeu o nome de SEQUEL ("Structured English Query Language"), sendo definida por D. D. CHAMBERLIN, entre outros, em 1974, nos laboratrios de pesquisa da IBM (Califrnia). Em 1975, foi implementado um prottipo de aplicao dessa nova linguagem. Entre 1976 e 1977, o SEQUEL foi revisado e ampliado, e teve seu nome alterado para "SQL" por razes jurdicas. A SQL se tornou um padro de fato, no mundo dos ambientes de banco de dados relacionais. Em 1982, o American National Standard Institute (ANSI) tornou a SQL padro oficial de linguagem em ambiente relacional. Infelizmente, como todo padro que se preze, existem hoje vrios dialetos SQL, cada um, evidentemente, tentando ser mais padronizado que o outro. A linguagem SQL foi desenvolvida especialmente para o ambiente relacional, podendo ser adaptada a qualquer ambiente no relacional.

A LINGUAGEM SQL

* * * * * *

Linguagem interativa de consulta (query AdHoc); Linguagem de programao para acesso a banco de dados; Linguagem de administrao de banco de dados; Linguagem cliente/servidor; Linguagem para banco de dados distribudo; Caminho de acesso a outros bancos de dados em diferentes mquinas.

FUNES DE UM SGBD

Definio de Dados (DDL)- permite ao usurio a definio da estrutura e organizao dos dados armazenados, e as relaes que existem entre eles; Manipulao de Dados (DML)- permite ao usurio ou a um programa de aplicao, a incluso, remoo, seleo ou atualizao de dados previamente armazenados no banco; Controle de Acesso- protege os dados de manipulaes no autorizadas; Compartilhamento de Dados- coordena o compartilhamento dos dados por usurios concorrentes, sem contudo interferir na ao de cada um deles; Integridade dos Dados- auxilia no processo de definio da integridade dos dados, protegendo contra corrupes, inconsistncias e falhas do sistema de computao.

* *

VANTAGENS DA LINGUAGEM SQL

Independncia de Fabricante- A SQL oferecida em praticamente todos os SGBD'S, e os que ainda no tm esto se encaminhando para l. Com isso posso mudar de SGBD sem me preocupar com o novo que vai chegar; Portabilidade Entre Computadores- A SQL pode ser utilizada desde um computador pessoal, passando por uma estao de trabalho, at um computador de grande porte; Reduo dos Custos com Treinamento- Baseado no item anterior, as aplicaes podem se movimentar de um ambiente para o outro sem que seja necessria uma reciclagem da equipe de desenvolvimento; Ingls Estruturado de Alto Nvel- A SQL formada por um conjunto bem simples de sentenas em ingls, oferecendo um rpido e fcil entendimento; Consulta Interativa- A SQL prov um acesso rpido aos dados, fornecendo respostas ao usurio, a questes complexas, em minutos ou segundos; Mltiplas Vises dos Dados- A SQL permite ao criador do banco de dados levar diferentes vises dos dados a diferentes usurios;

Definio Dinmica dos Dados- Por meio da SQL, podem-se alterar, expandir ou incluir, dinamicamente, as estruturas dos dados armazenados com a mxima flexibilidade.

O EXEMPLO

Todo o nosso percurso pela linguagem SQL ser efetuado com base no exemplo de modelo de dados apresentado na figura abaixo:

0:N

PEDIDO PEDIDO

1:1

POSS UI

1:N

ITEM DE ITEM DE PEDIDO PEDIDO

0:N

1:N

FAZ

TIRA

TEM

1:1
CLIENTE CLIENTE

1:1
VENDEDOR VENDEDOR

1:1
PRODUTO PRODUTO

TABELA CLIENTE
Cd. do cliente 720 870 110 222 830 130 410 20 157 180 260 290 390 234 Nome do cliente Ana Flvio Jorge Lcia Mauricio Edmar Rodolfo Beth Paulo Lvio Susana Renato Sebastio Jos Endereo Rua 17 n 19 Av. Pres. Vargas 10 Rua Caiap 123 Rua Itabira 123 L.9 Av. Paulista 1236 Rua da Praia sn Largo da Lapa 27 s Av. Climrio n.45 Tv. Moraes c/3 Av. Beira Mar n.1256 Rua Lopes Mendes 12 Rua Meireles n.123 Rua da Igreja n.10 Quadra 3bl.3 sl. 1003 Cidade Niteri So Paulo Curitiba B.Horizonte So Paulo Salvador Rio de Janeiro So Paulo Londrina Florianpolis Niteri So Paulo Uberaba Braslia CEP 24358310 22763931 30078500 22124391 3012683 30079300 30078900 25679300 30077500 30046500 30225900 30438700 22841650 UF RJ SP PR MG SP BA RJ SP PR SC RJ SP MG DF CGC 12113231/0001-34 22535126/9387-9 14512764/9834-9 28315213/9348-8 32816985/7465-6 23463284/234-9 12835128/2346-9 32485126/7326-8 32848223/324-4 12736571/2347-4 21763571/232-9 13276571/1231-4 32176547/213-3 21763576/1232-3 IE 2134 4631 2985 9343 7121 7431 9280 1923 2530 1820 9071 2931

TABELA VENDEDOR
Cdigo do Vendedor 209 111 11 240 720 213 101 310 250 Nome do Vendedor Jos Carlos Joo Antnio Felipe Jonas Joo Josias Maurcio Salrio Fixo 1.800 2.490 2.780 9.500 4.600 2.300 2.650 870 2.930 Faixa de Comisso C A C C A A C B B

TABELA ITEM DO PEDIDO


Nmero do Pedido 121 121 97 101 101 101 98 148 148 148 148 148 104 203 189 143 143 105 111 111 103 91 138 138 138 108 119 119 119 119 137 Cdigo do produto 25 31 77 31 78 13 77 45 31 77 25 78 53 31 78 31 78 78 25 78 53 77 22 77 53 13 77 13 22 53 13

Quantidade
10 35 20 9 18 5 5 8 7 3 10 30 32 6 45 20 10 10 10 70 37 40 10 35 18 17 40 6 10 43 8

TABELA PEDIDO
Nmero do Pedido 121 97 101 137 148 189 104 203 98 143 105 111 103 91 138 108 119 127 Prazo de Entrega 20 20 15 20 20 15 30 30 20 30 15 20 20 20 20 15 30 10 Cdigo do Cliente 410 720 720 720 720 870 110 830 410 20 180 260 260 260 260 290 390 410 Cdigo do Vendedor 209 101 101 720 101 213 101 250 209 111 240 240 11 11 11 310 250 11

TABELA PRODUTO
Cdigo do produto 25 31 78 22 30 53 13 45 87 77 Unidade do produto Kg BAR L M SAC M G M M M Descrio do produto Queijo Chocolate Vinho Linho Acar Linha Ouro Madeira Cano Papel Valor unitrio 0,97 0,87 2,00 0,11 0,30 1,80 6,18 0,25 1,97 1,05

VISO GRFICA
CLIENTE CLIENTE Cdigo do cliente Cdigo do cliente Nome do cliente Nome do cliente Endereo Endereo Cidade Cidade CEP CEP UF UF CGC CGC IE IE PEDIDO PEDIDO Nmero do pedido Nmero do pedido Prazo de entrega Prazo de entrega Cdigo do cliente Cdigo do cliente Cdigo do vendedor Cdigo do vendedor ITEM DO PEDIDO ITEM DO PEDIDO Nmero do pedido Nmero do pedido Cdigo do produto Cdigo do produto Quantidade Quantidade Valor Unitrio Valor Unitrio

VENDEDOR VENDEDOR Cdigo do Vendedor Cdigo do Vendedor

PRODUTO PRODUTO Cdigo do produto Cdigo do produto Descrio Descrio Unidade Unidade Val. Unit. Val. Unit.

Nome do vendedor Nome do vendedor Faixa de comisso Faixa de comisso Salrio fixo Salrio fixo

: Chave primria
: Chave estrangeira

CRIAO E DISTRIBUIO DE TABELAS


O comando CREAT TABLE cria a tabela solicitada e obedece seguinte forma: CREAT TABELA <tabela> (<descrio das colunas>); (<descrio das chaves>); PRIMARY KEY (colunas); FOREIGN KEY (colunas); REFERENCES <tabela>. <tabela> - o nome da nova tabela a ser criada; <descrio das colunas> - uma lista de colunas (campos) e seus respectivos tipos de dados (smallint, char, maney, varchar, integer, decimal, float, real, date, time, timestamp, logical, number); <descrio das chaves> - a lista de colunas que so tratadas como chave estrangeira. Alguns campos podem receber o valor NULL (nulo) e o campo definido como chave primria, alm de no poder receber NULL, deve ser um campo UNIQUE (sem repeties chave primria). Create Table Item do Pedido (Nmero do pedido Number Not Null Unique; Cd. do produto Number Not Null Unique; Quantidade Number Not Null; Valor unitrio Number Not Null; Primary Key (Nmero do pedido, Cdigo do produto); Foreign Key (Nmero do pedido); References Pedido; Foreign Key (Cdigo do produto); References Produto).

Create Table Cliente (Cd. do cliente Number Not Null Unique; Nome do cliente VarChar(20); Endereo VarChar(50); Cidade VarChar(20); CEP VarChar(9); UF VarChar(2); CGC VarChar(12); IE VarChar(20); Primary Key (Cd. do cliente)).

Create Table Pedido (Nmero do pedido Number Not Null Unique; Prazo de entrega Date Not Null; Cd. do cliente Number; Cd. do vendedor Number Not Null; Primary Key (Nmero do pedido); Foreign Key (Cd. do cliente); References Cliente; Foreign Key (Cd. do vendedor); References Vendedor ).

Create Table Vendedor (Cd. do vendedor Number Not Null Unique; Nome do vendedor VarChar(20) Not Null; Faixa de comisso Number Not Null; Salrio Fixo Number Not Null; Primary Key(Cd. do vendedor)).

Create Table Produto (Cd. do produto Number Not Null Unique; Descrio VarChar(50); Unidade Varchar(3); Valor Unitrio Number Not Null; Primary Key (Cd. do Produto)).

EXTRAINDO DADOS DE UMA TABELA


COMANDO SELECT: O comando SELECT tem palavras-chaves em um comando bsico: a) SELECT - Especifica as colunas.

b) FROM - Especifica as tabelas. c ) WHERE - Especifica as linhas.

SELECIONANDO COLUNAS ESPECFICAS DA TABELA:

Forma:

Select <nome(s) da(s) coluna(s)> From <tabela>

Problema: Listar todos os produtos com respectivas descries, unidades e valores unitrios. Problema: Listar o nome do cliente, com seu endereo e CGC. Problema: Listar o nome e salrio dos vendedores. Problema: Listar o nome e o percentual de 20% de cada salrio (criar uma coluna virtual).

SELECIONANDO TODAS AS COLUNAS DA TABELA Select * From<tabela>

Forma:

Problema: Listar todas as colunas de vendedor. Problema: Listar todas as colunas de produto.

SELECIONANDO SOMENTE ALGUNS REGISTROS DA TABELA

Forma:

Select <nome(s) da(s) coluna(s)> From <tabela> Where <nome da coluna> <operador> <valor>

OPERADORES RELACIONAIS
= <> < > >= <= Igual Diferente Menor do que Maior do que Maior ou igual do que Menor ou igual do que

Observaes:

Quando a coluna do tipo caractere, o <valor> deve estar entre aspas. Ex.: 'PARAFUSO'. Na linguagem SQL, existe a diferenciao entre maisculas e minsculas em alguns SGBDs, logo 'PARAFUSO' diferente de parafuso.

Problema: Listar o cdigo do produto e a quantidade dos itens do pedido com a quantidade igual a 35. Problema: Listar os clientes que moram em So Paulo. Problema: Listar os vendedores com salrio maior ou igual a R$ 2.300,00.

Problema: Listar o nome e a cidade dos clientes no residentes no Rio de Janeiro (RJ).

OPERADOR DE CONCATENAO
Exemplo: Select (cdigo_do_produto || ||

descrio_do_produto) as Cd_Ds From Produto. OPERADORES LGICOS AND OR NOT e ou negao

Problema: Listar os produtos que tenham unidade igual a M e valor unitrio maior que R$1,00. Problema: Listar os empregados com salrio no intervalo de R$ 2.300,00 R$ 2.650,00, inclusive. Problema: Listar os empregados com salrio fora do intervalo de R$ 2.300,00 R$ 2.650,00, inclusive. Problema: Liste os clientes e seus respectivos endereos; dos que moram em So Paulo ou estejam na faixa de CEP entre 30077000 e 30079000. Problema: Mostrar todos os pedidos que no tenham prazo de entrega igual a 15 dias.

Operadores Between e NOT Between Forma: Where <nome da coluna> Between <valor1> AND <valor2>
Where <nome da coluna> NOT Between <valor1> AND <valor2> Problema: Listar o cdigo e a descrio dos produtos que tenham o valor unitrio na faixa de R$0.32 at R$2.00. Problema: Listar os vendedores com salrio fixo no intervalo de 1.800,00 3.650,00. Problema: Listar os vendedores com salrio fixo fora do intervalo de 1.800,00 3.650,00.

OPERADORES LIKE E NOT LIKE

Forma:

Where <nome da coluna> Like <valor> Where <nome da coluna> NOT Like <valor>

Os operadores LIKE e NOT LIKE s trabalham sobre colunas que sejam do tipo CHAR. % - substitui uma palavra _ - substitui um caractere Problema: Listar os produtos que tenham a sua unidade comeando por K. Problema: Listar os vendedores que no comeam por Jo Problema: Listar as cidades cujo o nome inicia com a letra B.

OPERADORES IN E NOT IN

Forma: Where <nome da coluna> IN <valores>


Where <nome da coluna> NOT IN <valores> Esses operadores pesquisam registros que esto ou no contidos no conjunto de <valores> fornecido. Problema: Listar os vendedores que so da faixa de comisso A e B. Problema: Listar os clientes que tem como cidade Niteri ou Curitiba. Problema: Listar os produtos que no tem sua unidade comeando com M.

OPERADORES IS NULL E IS NOT NULL Forma: Where <nome da coluna> IS NULL <valores>
Where <nome da coluna> IS NOT NULL <valores> Problema: Mostrar os clientes que no tenham inscrio estadual. Problema: Mostrar todos os vendedores que tenham faixa de comisso.

ORDENANDO OS DADOS SELECIONADOS


Quando se realiza uma seleo, os dados recuperados no esto ordenados. A SQL prev a clusula ORDER BY para realizar uma ordenao dos dados selecionados.

Forma: Select <nome da(s) coluna(s)>

From <tabela> Where <condio(es)> Order By <nome da(s) coluna(s)> ou Order By <nmero da coluna>

DESC ASC

Problema: Mostrar em ordem alfabtica a lista de vendedores e seus respectivos salrios fixos. Problema: Listar os nomes, cidades e estados de todos os clientes, ordenados por estado e cidade de forma decrescente. Problema: Mostrar a descrio e o valor unitrio de todos os produtos que tenham a unidade KG, em ordem de valor unitrio ascendente.

REALIZANDO CLCULOS COM INFORMAO SELECIONADA


Com a linguagem SQL pode-se criar uma coluna que no pertena tabela original, e que seja fruto do clculo sobre algum campo da tabela. Problema: Mostrar o novo salrio fixo dos vendedores, de faixa de comisso C, calculado com base no reajuste de 75% acrescido de R$ 120,00 de bonificao. Ordenar pelo nome do empregado.

UTILIZANDO FUNES SOBRE CONJUNTO


Buscando Mximos e Mnimos (MAX, MIN):

Forma: Select MAX<nome da coluna>, MIN<nome da coluna>


Problema: Mostrar o menor e o maior salrio dos vendedores.

TOTALIZANDO COLUNA(SUM)

Forma: Select SUM<nome da coluna>


Problema: Mostrar a quantidade total pedida para o produto VINHO de cdigo 78.

CALCULANDO MDIAS(AVG)

Forma: Select AVG<nome da coluna>


Problema: Qual a mdia dos salrios fixos dos vendedores?

CONTANDO OS REGISTROS(COUNT)

Forma:

Select COUNT(*)

Problema: Quantos vendedores ganham acima de R$ 2.500,00 de salrio fixo? Problema: Determinar o nmero de clientes e o nmero de estados cadastrados.

UTILIZANDO A CLUSULA DISTINCT


Normalmente, vrios registros dentro de uma tabela podem conter os mesmos valores, com exceo da chave primria. Com isso, muitas consultas podem trazer informaes erradas. A clusula DISTINCT, aplicada em uma consulta, foi criada para no permitir que certas redundncias, obviamente necessrias, causem problema. Problema: Quais os produtos, cadastrados na tabela Produto? Problema: Determine quantas cidades diferentes existem na tabela cliente.

AGRUPANDO INFORMAES SELECIONADAS (GROUP BY)


Utilizando a clusula GROUP BY, possvel organizar a seleo de dados em grupos determinados.

Forma: Select <nome da(s) coluna(s)> From <tabela> Where condio(es) Group By <nome da(s) coluna(s)> Order By <nome da(s) coluna(s)>

Problema: Listar o nmero de produtos que cada pedido contm. Problema: Listar os clientes, sendo os mesmos agrupados por UF e ordenados por nome do cliente.

AGRUPANDO DE FORMA CONDICIONAL (HAVING)


A clusula HAVING realiza as restries das linhas resultantes da mesma forma que a clusula WHERE o faz em um SELECT. Podemos igualmente continuar com a clusula WHERE selecionando as condies da seleo.

Forma: Select <nome da(s) coluna(s)>

From <tabela> Group By <nome da(s) coluna(s)> HAVING condio(es)

Problema: Listar os pedidos que tm mais do que 3 produtos. Problema: Listar o total do salrio fixo a cada vendedor, cujo total acima de 2.000,00. Agrupados por faixa de comisso.

UTILIZANDO FUNES NO AGREGADAS


Clusula EXTRACT: Extrai dia, ms ou ano da data armazenada. Problema: Listar os clientes que fazem aniversrio no ano de 1978 e estado igual RJ. Clusula UPPER:

RECUPERANDO DADOS DE VRIAS TABELAS (JOINS)

At agora viemos trabalhando com a recuperao de dados sobre uma nica tabela, mas o conceito de banco de dados rene, evidentemente, vrias tabelas diferentes. Para que possamos recuperar informaes de um banco de dados temos, muitas vezes, a necessidade de acessar simultaneamente vrias tabelas. Algumas dessas consultas necessitam realizar uma juno (JOIN) entre tabelas, para desta poder extrair as informaes necessrias para a consulta formulada.

O CONCEITO DE QUALIFICADORES DE NOME

O qualificador de nome consiste no nome da tabela seguido de um ponto e o nome da coluna na tabela. Exemplo: O qualificador de nome para a coluna DESCRIO da tabela PRODUTO ser: PRODUTO.descrio Os qualificadores de nome so utilizados em uma consulta para efetivar a juno (JOIN) entre tabelas, uma vez que o relacionamento entre tabelas realizado por meio de chaves estrangeiras.

Problema: Juntar a tabela cliente com pedido. Problema: Quais os clientes que fizeram os pedidos? Listar pelo nome de cliente. Obs.: A equao apresentada na clusula where chamada de EQUAO DE JUNO. Podemos utilizar as clusulas LIKE, NOT LIKE, IN, NOT IN, NUL, NOT NULL e mistur-las com os operadores AND, OR e NOT, dentro de uma clusula WHERE na juno entre tabelas. Problema: Quais os clientes que tm prazo de entrega superior a 15 dias e que pertencem aos estados de So Paulo (SP) ou Rio de Janeiro (RJ)?

Problema: Mostrar os clientes e seus respectivos prazos de entrega, ordenados do maior para o menor. Obs.: Para que no seja necessrio escrever todo o nome da tabela nas qualificaes de nome, podemos utilizar ALIASES (sinnimos) definidos na prpria consulta. A definio dos ALIASES feita na clusula FROM e utilizada normalmente nas outras clusulas (Where, Order By, Group By, Having, Select).

Problema: Apresentar os vendedores (ordenados) que emitiram pedidos com prazos de entrega superiores a 15 dias e tenham salrios fixos igual ou superior a R$ 1.000,00.

JUNTANDO MAIS DE DUAS TABELAS


Problema: Mostre os clientes (ordenados) que tm prazo de entrega maior que 15 dias para o produto QUEIJO e que sejam do Rio de Janeiro. Problema: Mostre todos os vendedores que venderam chocolate em quantidade superior a 10 Kg. Problema: Quantos clientes fizeram pedidos com o vendedor Joo? Problema: Quantos clientes da cidade do Rio de Janeiro e Niteri tiveram seus pedidos tirados com o vendedor Joo?

UTILIZANDO CONSULTAS ENCADEADAS (SUBQUERIES) O que uma subquery? Em linhas gerais, quando o resultado de uma consulta utilizada por outra consulta, de forma encadeada e contida no mesmo comando SQL.
Problema: Que produtos participam em qualquer pedido cuja quantidade seja 10? Problema: Quais vendedores ganham um salrio fixo abaixo da mdia? Problema: Quais os produtos que no esto presentes em nenhum pedido?

INSERINDO, MODIFICANDO E APAGANDO REGISTROS


Adicionando Registro Tabela:

Forma:

Insert Into <nome da tabela> (<nome da(s) coluna(s)>) values (<valores>)

ATUALIZANDO UM REGISTRO Forma: Update <nome da tabela>


Set<nome da(s) coluna(s)> = valor Where <condies> Problema: Alterar o valor unitrio do produto parafusode R$ 1.25 para R$ 1.62. Problema: Atualizar o salrio fixo de todos os vendedores em 27%, mais uma bonificao de R$ 100,00. Problema: Acrescentar 2,5% ao preo unitrio dos produtos que estejam abaixo da mdia dos preos, para aqueles comprados a quilo.

APAGANDO REGISTROS DA TABELA

Forma: Delete From <nome da tabela>


Where <condio>

Problema: Apagar todos os vendedores com faixa de comisso nula. Problema: Apagar todos os registros de pedidos realizados por vendedores fantasmas (operao caa-fantasma).

UTILIZANDO VIEWS
As tabelas criadas em um banco de dados relacional tm existncia fsica dentro do sistema de computao. Muitas vezes necessrio criar tabelas que no ocupem espao fsico, mas que possam ser utilizadas como as tabelas normais. Essas so chamadas de VIEWS (tabelas virtuais). Como as TABELAS REAIS, as VIEWS devem ser criadas.

Forma: Create View < nome da View>

(<nome da(s) coluna(s)>) as Select <nome da(s) coluna(s)> From<nome da tabela> Where <condio>

As VIEWS so utilizadas para se ter uma particular viso de uma tabela, para que no seja necessria a utilizao do conjunto como um todo.

Problema: Criar uma VIEW que contenha s os produtos pedidos a metro. Problema: Cria uma VIEW contendo o cdigo do vendedor, o seu nome e o salrio fixo mdio no ano.

Você também pode gostar