Você está na página 1de 8

Resumo tpicos de Banco de Dados I prof. Edilberto Silva http://edilms.eti.

br

Abstrao de dados
Banco de Dados
Conceitos Fundamentais de Banco de Dados O sistema de banco de dados deve garantir uma vi-
so totalmente abstrata do banco de dados para o usu-
Artigo de Ricardo Rezende rio, ou seja, para o usurio do banco de dados pouco
(ricardo@sqlmagazine.com.br) publicado na Revista Sql importa qual unidade de armazenamento est sendo
Magazine. Disponvel on-line em http://www.devmedia. usada para guardar seus dados, contanto que os mes-
com.br/articles/viewcomp.asp?comp=1649 (acesso mos estejam disponveis no momento necessrio.
15/12/08) (texto na ntegra)
Esta abstrao se d em trs nveis (Figura 2):
A idia deste artigo no a de reinventar a roda,
mas sim a de trazer tona todos os fundamentos que Nvel de viso do usurio: as partes do banco de
servem de pilar para o imenso mundo que banco de dados que o usurio tem acesso de acordo com a
dados. necessidade individual de cada usurio ou grupo de
usurios;
Conceitos Bsicos Nvel conceitual: define quais os dados que esto
armazenados e qual o relacionamento entre eles;
Segundo Korth, um banco de dados uma coleo Nvel fsico: o nvel mais baixo de abstrao, em
de dados inter-relacionados, representando informa- que define efetivamente de que maneira os dados
es sobre um domnio especfico, ou seja, sempre esto armazenados.
que for possvel agrupar informaes que se relacionam
e tratam de um mesmo assunto, posso dizer que tenho
um banco de dados.

Podemos exemplificar situaes clssicas como


uma lista telefnica, um catlogo de CDs ou um sistema
de controle de RH de uma empresa.

J um sistema de gerenciamento de banco de dados


(SGBD) um software que possui recursos capazes de
manipular as informaes do banco de dados e interagir
com o usurio. Exemplos de SGBDs so: Oracle, SQL
Server, DB2, PostgreSQL, MySQL, o prprio Access ou
Paradox, entre outros.
Figura 2. Nveis de abstrao.
Por ltimo, temos que conceituar um sistema de
banco de dados como o conjunto de quatro componen- Projeto de banco de dados
tes bsicos: dados, hardware, software e usurios. Date
conceituou que sistema de bancos de dados pode ser Todo bom sistema de banco de dados deve apre-
considerado como uma sala de arquivos eletrnica. A sentar um projeto, que visa a organizao das informa-
Figura 1 ilustra os componentes de um sistema de ban- es e utilizao de tcnicas para que o futuro sistema
co de dados. obtenha boa performance e tambm facilite infinitamen-
te as manutenes que venham a acontecer.

O projeto de banco de dados se d em duas fases:


1. Modelagem conceitual;
2. Projeto lgico.
Estas duas etapas se referem a um sistema de ban-
co de dados ainda no implementado, ou seja, que
ainda no exista, um novo projeto. Para os casos em
que o banco de dados j exista, mas um sistema le-
gado, por exemplo, ou um sistema muito antigo sem
documentao, o processo de projeto de banco de da-
dos se dar atravs da utilizao de uma tcnica cha-
mada de Engenharia Reversa, que ser visto em outra
oportunidade.
Figura 1. Componentes de um sistema de banco de
dados. Modelo conceitual
Os objetivos de um sistema de banco de dados so a descrio do BD de maneira independente ao
o de isolar o usurio dos detalhes internos do banco de SGBD, ou seja, define quais os dados que aparecero
dados (promover a abstrao de dados) e promover a
no BD, mas sem se importar com a implementao que
independncia dos dados em relao s aplicaes, ou
se dar ao BD. Desta forma, h uma abstrao em
seja, tornar independente da aplicao, a estratgia de
nvel de SGBD.
acesso e a forma de armazenamento.
Resumo tpicos de Banco de Dados I prof. Edilberto Silva http://edilms.eti.br

Uma das tcnicas mais utilizadas dentre os profis- delo lgico para a linguagem do software escolhido
sionais da rea a abordagem entidade- para implementar o sistema.
relacionamento (ER), onde o modelo representado
graficamente atravs do diagrama entidade- Concluses
relacionamento (DER) (Figura 3).
Nesta primeira coluna, abordei os conceitos bsicos
de banco de dados. Estes conceitos so os primeiros
passos para se aventurar em projetos de bancos de
dados. Vimos algumas terminologias e conceitos que
so importantes para iniciar um projeto de maneira a
documentar todas as etapas tendo assim, uma ferra-
menta de apoio fundamental para a implementao e
manuteno futura no sistema. Ricardo Rezende

Figura 3. Exemplo de diagrama entidade- Conceitos Fundamentais de Banco de Dados (parte 2)


relacionamento. Artigo de Ricardo Rezende Parte 2
(ricardo@sqlmagazine.com.br) publicado na Revista Sql
O modelo acima, entre outras coisas, nos traz infor- Magazine. Disponvel on-line em http://www.devmedia
maes sobre Alunos e Turmas. Para cada Aluno, ser .com.br/articles/viewcomp.asp?comp=1678 (acesso
armazenado seu nmero de matrcula, seu nome e 15/12/08) (texto na ntegra)
endereo, enquanto para cada turma, teremos a infor-
mao de seu cdigo, a sala utilizada e o perodo.
Histrico
Modelo Lgico
A melhor maneira de entendermos o presente co-
Descreve o BD no nvel do SGBD, ou seja, depende nhecendo o passado. Seguindo uma dica de um amigo,
do tipo particular de SGBD que ser usado. No pode- Fernando Boaglio (www.boaglio.com), neste artigo irei
mos confundir com o Software que ser usado. O tipo abordar os primrdios dos bancos de dados, mostrando
de SGBD que o modelo lgico trata se o mesmo sua evoluo e cronologia at os dias de hoje.
relacional, orientado a objetos, hierrquico, etc. Em muitos momentos conseguimos entender exa-
tamente o motivo que trouxe a tecnologia ao atual est-
Abordaremos o SGBD relacional, por serem os mais gio de amadurecimento e podemos inclusive arriscar
difundidos. Nele, os dados so organizados em tabelas alguns palpites das tendncias para os prximos anos.
(Quadro 1). No tenho a pretenso de ser um guru ou vidente, ape-
nas tentarei esclarecer o internauta de como as coisas
Aluno aconteceram neste nosso mundo dos bancos de dados.
Mat_aluno Nome Endereo Boa leitura!
1 Ceclia Ortiz Rezende Rua dos Ips,
Do antigo ao recente
37
2 Ablio Jos Dias Av.Presidente
Temos que voltar aos registros de bibliotecas, neg-
Jnio Quadros cios em geral, registros policiais, fichas de pacientes e
3 Renata Oliveira Fran- Rua Nove de todas as informaes armazenadas de maneira impres-
co Julho, 45 sa para consultas posteriores. Foi l que tudo comeou.
Havia um histrico muito longo de informaes armaze-
Turma nadas desta maneira e tambm uma metodologia de
Cod_turma Sala Perodo indexao e recuperao da informao quando se
1 8 Manh precisava dela. No se pode ignorar esta histria, pois
2 5 Noite h muito a se aprender com os sucessos e fracassos
Quadro 1. Exemplo de tabelas em um SGBD relacional. deste pessoal que manipulava estas informaes. Boas
prticas e bons princpios de projetos de bancos de
O modelo lgico do BD relacional deve definir quais dados datam aquela poca e muito se aprendeu para a
as tabelas e o nome das colunas que compem estas criao de bons projetos que alcanam boa performan-
tabelas. ce, segurana e confiabilidade.

Para o nosso exemplo, poderamos definir nosso Dcada de 60


modelo lgico conforme o seguinte:
Os computadores se tornam parte efetiva do custo
Aluno(mat_aluno, nome, endereco) das empresas juntamente com o crescimento da capa-
Turma (cod_turma, sala, periodo) cidade de armazenamento. Foram desenvolvidos dois
principais modelos de dados: modelo em rede
importante salientar que os detalhes internos de (CODASYL - Comitee for Data Systems Language) e o
armazenamento, por exemplo, no so descritos no modelo hierrquico (IMS Information Management
modelo lgico, pois estas informaes fazem parte do System). O acesso ao BD feito atravs de operaes
modelo fsico, que nada mais que a traduo do mo- de ponteiros de baixo nvel que unem (link) os registros.
Detalhes de armazenamento dependiam do tipo de
Resumo tpicos de Banco de Dados I prof. Edilberto Silva http://edilms.eti.br

informao a ser armazenada, desta forma, a adio de


um campo extra necessitava de uma reescrita dos fun- Dcada de 70
damentos de acesso/modificao do esquema. Os usu-
rios precisavam conhecer a estrutura fsica do BD para Muitas discusses a respeito do valor da competio
poder realizar uma consulta. entre os sistemas enquanto a teoria de banco de dados
conduz ao objetivo final de projeto de pesquisa. Dois
principais prottipos de sistema relacional foram desen-
Modelo de dados em rede (Figura 1): volvidos entre 1974 e 1977 e demonstram um timo
exemplo de como a teoria conduz a boas prticas.
Os primeiros trabalhos foram realizados em
1964 por Charles Bachman; Ingres: Desenvolvido pela UCB. Que no final
Dados so representados por uma coleo das contas serviu como base para Ingres
de registros e os relacionamentos por meio Corp., Sybase, MS SQL Server, Britton-Lee,
de links; Wang PACE. Este sistema utilizava QUEL co-
representado por um diagrama constitudo mo linguagem de consulta;
por caixas e linhas;
System R: Desenvolvido pela IBM San Jose e
So usados apenas relacionamentos muitos-para- serviu de base para o IBM SQL/DS, IBM DB2,
muitos. Oracle, todas os BD da HP, Tandem's Non-
Stop SQL. Este sistema utilizava SEQUEL co-
mo linguagem de consulta.

O termo Sistema de Gerenciamento de Banco de


Dados Relacional (SGBDR RDBMS em ingls) foi
Figura 1. Representao de um modelo de dados definido durante este perodo.
em rede.
1976
Modelo de dados hierrquico (Figura 2)
O Dr. Peter Chen (visite
Tambm se utilizava de registros para re-
bit.csc.lsu.edu/~chen/chen.html (Figura 4) prope o
presentar os dados e links para os relacio-
modelo Entidade-Relacionamento (ER) para projetos de
namentos;
banco de dados dando uma nova e importante percep-
So organizados na forma de uma rvore o dos conceitos de modelos de dados. Assim como
com raiz; as linguagens de alto nvel, a modelagem ER possibilita
Como Exemplo: Clipper, Dbase 2, Fox Pro, ao projetista concentrar-se apenas na utilizao dos
COBOL. dados, sem se preocupar com estrutura lgica de tabe-
las.

Figura 4. Dr. Peter Chen, criador do modelo ER.

Incio dos anos 80

A comercializao de sistemas relacionais comea a


virar uma febre entre as organizaes.
Figura 2. Representao de um modelo de dados
hierrquico. Metade dos anos 80
O maior sucesso comercial foi o sistema SABRE, A Linguagem Estruturada de Consulta SQL (Struc-
desenvolvido pela IBM e American Airlines. tured Query Language) se torna um padro mundial. A
IBM transforma o DB2 como carro chefe da empresa
1970 1972 em produtos para BD. Os modelos em rede e hierrqui-
co passam a ficar em segundo plano praticamente sem
Edgar Frank Codd (Figura 3) prope o modelo de desenvolvimentos utilizando seus conceitos, porm
dados relacional, que se tornou um marco em como vrios sistemas legados continuam em uso. O desen-
pensar em banco de dados. Ele desconectou a estrutu- volvimento do IBM PC desperta muitas empresas e
ra lgica do banco de dados do mtodo de armazena- produtos de BD como: RIM, RBASE 5000, PARADOX,
mento fsico. Este sistema se tornou padro desde en- OS/2 Database Manager, Dbase III e IV (mais tarde
to. transformado em FoxBase e mais tarde ainda como
Visual FoxPro), Watcom SQL, entre outros.
Figura 3. Dr. Edgar Frank Codd, o pai do modelo re-
lacional. Incio dos anos 90
Conhea mais o trabalho do Dr. Codd em Tem incio uma leve crise econmica nas indstrias
http://www.informatik.uni- e algumas empresas sobrevivem oferecendo alguns
trier.de/~ley/db/about/codd.html
Resumo tpicos de Banco de Dados I prof. Edilberto Silva http://edilms.eti.br

produtos a custos muito elevados. Muito desenvolvi- Estamos presenciando grandes projetos envolvendo
mento acontece em ferramentas de desenvolvimento BD como o projeto Genoma, geologia, segurana na-
para o desktop no desenvolvimento de aplicaes (cli- cional e dados de explorao espacial.
ent tolls), tais como: PowerBuilder (Sybase), Oracle
Developer, Visual Basic (Microsoft), entre outros. Data mining, data warehousing, data marts so tc-
nicas utilizadas atualmente e no futuro sero utilizados
O modelo cliente-servidor (client-server) passa a ser cada vez mais, sem dvida alguma.
uma regra para futuras decises de negcio e vemos o
desenvolvimento de ferramentas de produtividade como Sistemas de compras personalizadas e inteligentes
Excel/Access (Microsoft) e ODBC, tambm marcado sero fato e utilizaro histrico de vendas.
como o incio dos prottipos de Object Database Mana-
gement Systems (ODBMS). Sucessores do SQL (e quem sabe dos Sistemas de
Gerenciamento de Banco de Dados Relacionais
Metade dos anos 90 RDBMS, em ingls) surgiro no futuro. Vrias tentativas
de padronizar um sucessor do SQL no foram bem
quando vemos a exploso da Internet./WWW e sucedidas. SQL92, SQL2 e SQL3 ainda esto pouco
uma louca corrida para prover acesso remoto a siste- potentes e mais extenses so difceis de implementar.
mas de computadores com dados legados. Percebe-se Muito provavelmente isto ser alcanado pelo XML e
um crescimento exponencial na tecnologia Web/BD. outras tcnicas emergentes. XML com Java para BD
a nova aposta como o prximo grande acontecimento.
Aumentam o uso de solues de cdigo aberto (o- Vejamos mais tarde o que mais ser novidade.
pen source) atravs de gcc, cgi, Apache, MySQL, etc.
O uso de BD mveis so os novos produtos que
Processos de transao em tempo real (OLTP - On- vem surgindo para comercializao em vrios segmen-
Line Transaction Process) e processos analticos em tos. Processos de transaes distribudas comeam a
tempo real (OLAP On-Line Analitical Process) atin- se tornar uma regra em vrias reas de planejamento
gem maturidade atravs de muitos negcios utilizando de negcios.
os PDVs (Ponto de Venda).
Provavelmente veremos uma leve crise nas vendas
Final dos anos 90 dos RDBMS e Linux com Apache suportaro MySQL (e
at mesmo Oracle) com um hardware relativamente
O grande investimento em empresas de Internet im- barato e isso ser a maior ameaa ao alto custo de
pulsiona as vendas de ferramentas para conexo sistemas legados da Oracle e DB2 e ento se dar
Web/Internet/BD. Active Server Pages, Front Page, incio a projetos para manter seus clientes.
Java Servlets, JDBC, Enterprise Java Beans, ColdFusi-
on, Dream Weaver, Oracle Developer 2000, so um Tudo ser orientado a objeto, inclusive os BD. Ob-
exemplo dessas ferramentas. ject Database Management Group (ODMG) props um
padro que foi aceito e, quem sabe, algo venha deles.
Chegamos ao sculo 21 Assuntos como tica e segurana tendem a diminuir,
mas invariavelmente voltaro tona.
Vemos a decadncia da indstria da Internet de uma
maneira geral, mas slidos crescimentos em aplicaes Seremos capazes de consultar um BD de registros
para BD continuam. mdicos/genticos de um futuro empregado de nossa
empresa?
Aparecem mais aplicaes que interagem com
PDAs (Personal Digital Assistant), transaes em Poderemos consultar as informaes de um(a) futu-
PDVs, consolidao de vendas, etc. ro(a) companheiro(a) / namorado(a) para descobrir
possveis falhas ou distrbios genticos?
Trs companhias predominam no amplo mercado de
BD: IBM (que comprou a Informix), Microsoft e Oracle. A submarino.com poder ficar de olho nas suas
compras de livros ou CDs?
2003
Haver um banco de dados nacional com informa-
Em 18 de abril, morre o pai do modelo relacional, o es de estupradores, assassinos, traficantes?
Dr. Edgar Frank Ted Codd. Aos 76 anos de idade, em
sua casa na Flrida. Nascido em 1923 em Portland, na Quem ter permisso de fazer rastreamentos na
Inglaterra. O caula de 07 irmos, filho de pai fabricante Web?
de artigos de couro e me professora.
Quantas vezes, nestes ltimos seis meses, voc vi-
Quais as tendncias? sitou uma sala de bate-papo, site pornogrfico, site de
stira poltica, visitou o site da SQL Magazine?
Sistemas gigantescos (Terabytes) esto surgindo e
necessitaro cada vez mais de novos recursos para Quem ter permisso de armazenar ou ver estas in-
manipulao e anlise dos dados. formaes?
Resumo tpicos de Banco de Dados I prof. Edilberto Silva http://edilms.eti.br

E o questionamento mais difcil de se responder: 9. |X| Juno - juno utilizada para combinar tu-
Quem tomar estas decises? plas de duas relaes partindo dos atributos co-
muns a ambas. Correlao: INNER JOIN, OUTER
Concluses JOIN, LEFT JOIN, RIGHT JOIN

Como podemos perceber, a histria nos ensina mui-


to do que somos hoje. No voltaremos ao passado para IDEMPOTENTES
trabalhar com o velho WordStar, mas extremamente o Onde de pode aplicar IdemPotncia:
importante aprendermos com o passado para decidir-
mos melhor o nosso futuro afinal, o futuro est em nos- o Unio, Interseo e Juno
sas mos.
Isolamento das Transaes
Fim do artigo
O Padro SQL ANSI/ISSO define quatro nveis
de isolamento de transaes baseados nas se-
Conceitos guintes situaes:
Dirty Reads  ocorre quando uma
Modelagem conceitual  Nesta fase, constru- transao l dados escritos por uma transao
do um modelo conceitual na forma de um diagra- corrente que ainda no foi confirmada
ma entidade-relacionamento (DER). (COMMIT).
o Este modelo captura as necessidades da organi- Non-Repeatable Reads  uma transa-
zao em termos de armazenamento de dados de o l um dado que ela j havia lido anterior-
forma independente de implementao. mente, e descobre que aqueles dados foram
Projeto lgico  Esta etapa objetiva transformar modificados por outra transao (confirmada
o modelo conceitual obtido na primeira fase em um aps a primeira leitura).
modelo lgico. Phantom Read  uma transao l um
o O modelo lgico define como o banco de dados conjunto de linhas que satisfaa algum critrio
ser implementado em um TIPO de SGBD espec- de pesquisa. Outra transao insere uma linha
fico.* que satisfaa o critrio da anterior. Se a primei-
ra transao executar novamente o comando
de pesquisa, ela receber um conjunto diferen-
lgebra Relacional te de linhas.
Primitivas e Binrias Os quadros de nveis de isolamentos so des-
1. Produto Cartesiano combinao de Tuplas. critos a seguir para voc entender melhor.
Correlao: SELECT Read Uncommitted Uma transao
pode enxergar dados no confirmados por ou-
2. U Unio - cria uma relao partindo de duas ou-
tra transao
tras. Correlao: UNION
Read Committed  Uma transao no
3. Diferena - obter uma relao a partir da dife- pode enxergar dados no confirmados por ou-
rena da primeira pela segunda relao. Correla- tra transao, at que estes dados sejam con-
o: NOT IN firmados.
Especficas para relaes Primitivas e Unrias Repeatable Read  Uma transao
4. Seleo - Retorna tuplas que satisfazem um neste nvel garante que valores j lidos no
predicado. Subconjunto horizontal de uma relao. possam ser alterados por outra transao.
Correlao: WHERE. <, =, >, AND, NOT, IN Serializable  Uma transao s pode-
r interagir com outras transaes concorrentes
5. Projeo retorna um ou mais atributos. Cor-
no sentido de produzir o mesmo efeito, como se
relao: SELECT.
cada transao estivesse sendo executada
6. Renomeao - renomear uma relao com ou- uma aps a outra.
tro nome, permitindo desta forma o uso desta co- A tabela a seguir mostra quais situaes podem
mo primeiro operando Permite tambm renomear ocorrer em cada um dos nveis de isolamento:
atributos.
Dirty Non-
Adicionais Phantom
Nvel Repeatable
Reads Read
Reads
7. Interseo - todas as tuplas que pertenam a
ambas as relaes presentes na operao. Corre- Read Uncom-
Possvel Possvel Possvel
lao: INNER JOIN, =, IN mitted
8. Diviso - produz como resultado a projeo de Read Commit-
Impossvel Possvel Possvel
todos os elementos da primeira relao que se re- ted
lacionam com todos os elementos da segunda re- Repeatable
lao. Correlao: IN Impossvel Impossvel Possvel
Read
Resumo tpicos de Banco de Dados I prof. Edilberto Silva http://edilms.eti.br

Serializable Impossvel Impossvel Impossvel tamento sis- ais. Valores nulos devem ter um
temtico de tratamento diferente de valores
valores nulos em branco.
Nveis de ABSTRAO de DADOS
estrutura do banco de dados (do-
Sistema BD deve prover uma viso abs- mnios, campos, tabelas, regras
trata de dados para os usurios, isolando, desta catlogo rela- de integridade, ndices, etc) deve
forma, detalhes mais internos do BD. cional ativo: estar disponvel em tabelas (tam-
bm referenciadas como catlo-
go).
Nvel fsico ou Interno  descreve co-
mo os dados esto realmente armazenados, capacidade de manipular as in-
englobando estruturas complexas de baixo n- formaes do banco de dados em
atualizao de
vel. grupos de registros, ou seja, ser
alto-nvel
capaz de inserir, alterar e excluir
Nvel conceitual ou lgico  Esquema
vrios registros ao mesmo tempo.
Conceitual, descreve quais os dados esto
armazenados e seus relacionamentos. descrito Pelo menos uma linguagem deve
atravs de estruturas relativamente simples sub- ser suportada, para que possa
linguagem de manipular a estrutura do banco de
Nvel de vises do usurio ou nvel ex- dados abran- dados (como criao e alterao
terno:, descrevendo partes do BD que sero vi-
gente de tabelas), assim como extrair,
sualizadas pelos usurios de acordo com suas
inserir, atualizar ou excluir dados
necessidades. Subconjunto de dados do BD,
sem que exista a necessidade de estarem ar- Se houve modificao na forma
mazenados no BD. Prov a independncia lgi- como os dados esto armazena-
ca e fsica dos dados. Independncia lgica independncia dos fisicamente, nenhuma altera-
possui a capacidade de mudar o esquema con- fsica o deve ser necessrias nas
ceitual sem a necessidade de modificar pro- aplicaes que fazem uso do ban-
gramas da aplicao e esquemas externos, en- co
quanto que a fsica tem a capacidade de mudar alterao na estrutura do banco
o esquema interno sem a necessidade de alte- de dados como incluso ou exclu-
rar os esquemas conceitual e externo. independncia
so campos da tabela ou altera-
lgica
o no relacionamento entre tabe-
las no deve afetar os aplicativo
deve ser capaz de efetuar altera-
atualizao de es, excluses e incluses nelas
vises e devem ser repassadas para
tabelas originais
(integridade de entidade, integri-
dade referencial, restries,etc)
independncia precisam ser estabelecidas dentro
de integridade do catlogo ou dicionrio de da-
dos, e ser totalmente independen-
tes da lgica dos aplicativos.
SGBDs podem ser distribudos
em diversas plataformas que se
independncia
encontrem interligados em re-
de distribui-
de.Isto no pode afetar a
o
funcionalidade do sistema e dos
aplicativos
O sistema deve ser capaz de im-
pedir qualquer usurio ou progra-
no- mador de transgredir os mecanis-
12 Regras de Codd subversiva mos de segurana, regras de inte-
devem ser apresentadas como gridade do banco de dados e res-
Regra das relaes (tabelas formadas por tries,
informaes linhas e colunas). Vinculo entre
em tabelas tabelas por campos comuns tanto Conceitos
aos dados quanto aos metadados
Cardinalidade x Modalidade
o mtodo de referncia deve ser o
Regra de a-
nome da tabela, o valor da chave Cardinalidade  a especificao do
cesso garan- nmero de ocorrncias de um item que pode
primria e o nome do cam-
tido: ser relacionado com o nmero de ocorrncias
po/coluna.
de outro item; (1:1, 1:N, N:M). o nmero de
Regra de tra- permita a distino de dados re-
Resumo tpicos de Banco de Dados I prof. Edilberto Silva http://edilms.eti.br

entidades ao qual outra entidade pode estar Atributos  so propriedades usadas


associada via um relacionamento para descrever uma entidade. Mapeia um con-
Modalidade ou totalidade  indica se junto de entidades em um domnio.
um item precisa ou no participar em um rela- o "Funes que levam um ponto de um
cionamento; (obrigatrio ou opcional) conjunto de entidades a um ponto de um
Relao  conjunto de n-tuplas ou tu- conjunto - de valores (ou seja, registram o
plas onde cada tupla t uma lista ordenada de que se deseja descrever sobre uma entida-
n valores v t=(v1,v2,vn) onde cada elemento Vn de".( Chen:)
um elemento do domnio de atributos ou tem o "Atributo uma funo que mapeia um
valor especial nulo. conjunto de entidades em um domnio".(
o Os SGBDs relacionais representam as Korth:)
relaes por meio de tabelas Tipos de Atributo
o As tuplas de uma relao no so or- o Simples  com um nico ncleo. No
denadas se dividem em partes. Ex.: idade, iniciais
o Os atributos no so relacionados o Compostos  compostos (com n atribu-
o Cada tupla contm apenas um valor pa- tos simples, exemplo: Endereco = ru-
ra cada atributo (1Fnormal) a+numero+bairro+cidade+UF)
o Monovalorado  somente um valor pa-
Relacionamento
ra cada instncia. Ex: Nome, Data Nasci-
o " uma associao entre entida- mento
des".(Korth)
o Multivalorado  Vrios valores para
o " uma estrutura abstrata que indica as cada instncia. Ex: Dependentes
associaes entre elementos de um con-
o Derivados  So obtidos a partir de va-
junto de entidades e elementos de outro
lores de outra entidade ou atributos. Ex:
conjunto de entidades".(Betzer)
TempoEmpresa (data atual dataentrada
o Identificado  a chave estrangeira par- na entidade contrato), idade (pela data de
ticipa da chave primria na tabela filha aniversrio
o No-Identificado  a chave estrangeira o Nulo  quando no se apresenta valo-
um campo comum e no participa da res para o mesmo
chave primria na tabela filha
Domnio  Conjunto de valores per-
Conjunto De Relacionamentos  um missveis de um determinado atributo. Tipo de
conjunto formado por relacionamentos de um dado (int, caracter, {AM,DF, SP}
mesmo tipo.
Independncia fsica  Capacidade de
o cliente e emprstimo:. O conjunto de re- se modificar o esquema fsico sem alterar os
lacionamentos devedor denota a associa- programas de aplicao
o entre clientes e emprstimos bancrios
contrados pelo cliente. Independncia lgica  Capacidade de
se modificar o esquema conceitual sem alterar
Instncia  Os dados atuais armaze- os programas de aplicao
nados no BD em um momento particular. Tam-
bm chamado estado do banco de dados. Chaves
Entidades  so objetos ou "coisas" do SuperChave  Conjunto de um ou
mundo real que possuem uma existncia inde- mais atributos que, tomados em conjunto, per-
pendente e so de interesse para uma determi- mite identificar unicamente uma entidade no
nada aplicao. conjunto de entidades
o "Uma entidade uma representao Chaves candidatas  Superchaves
abstrata de um objeto do mundo real um menores possveis, em que nenhum subconjun-
ser, um fato, uma coisa, um organismo so- to prprio superchave. Seja K um conjunto de
cial, etc)." (Setzer) atributos da varivel de relao R. Ento, K
uma chave candidata para R se e somente se
o Uma entidade um objeto que existe e
ela possui as seguintes propriedades:
distinguvel de outros objetos. (Korth)
o Unicidade  nenhum valor v-
o Entidade Forte (Dominante)  Aquela
lido de R contm duas tuplas diferentes
que possui chave primria
com o mesmo valor para K
o Entidade fraca (subordinada ) Aquela
o Irredutibilidade  nenhum sub-
que sua chave primria composta da
conjunto prprio de K tem a proprieda-
chave primria da entidade forte e de atri-
de de unicidade
buto identificador (chave candidata) da en-
tidade fraca Chave Primria  Chave candidata es-
colhida pelo projetista do banco de dados como
mecanismo principal para a identificao de en-
Resumo tpicos de Banco de Dados I prof. Edilberto Silva http://edilms.eti.br

tidades no conjunto de entidades (chave prim- Formas Normais


ria) (1FN) Primeira Forma Normal  Uma
Chave Alternativa Chave candidata relao est na primeira forma normal (1FN) se
no escolhida para ser chave primria no possuir grupos de repetio ( ou seja, se
Chave Estrangeira  Conjunto de atri- todos atributos na relao estiveram baseados
butos de uma relao R2 cujos valores devem em domnios simples ).
obrigatoriamente corresponder a valores de al- o Uma relao est na 1FN se somente
guma chave candidata de alguma varivel de todos os domnios bsicos contiverem so-
relao R1 mente valores atmicos (no contiver gru-
pos repetitivos). Para atingir esta forma
Chave Substituta (surrogate key) ou ar-
normal devemos eliminar os grupos de re-
tificial  Chave criada artificialmente para iden-
petio.
tificar uma entidade no tendo nenhum signifi-
cado no negcio (2FN) Segunda Forma Normal  Uma
relao R est na 2FN se e somente se ela es-
Linguagens tiver na 1FN e todos os atributos no chave fo-
DML (Data Manipulation Language) rem totalmente dependentes da chave primria
o Procedimental  Especfica quais da- (dependente de toda a chave e no apenas de
dos so desejados e como chegar a eles parte dela)
o No procedimental  Especifica quais o Uma relao est na 2 forma normal
dados so desejados, sem especificar co- se est na 1 FN e os atributos que no so
mo chegar a eles chave dependem da totalidade da chave.
DDL (Data Definition Language) - (3FN) Terceira Forma Normal  Uma
Linguagem de Definio de Dados). relao R est na 3FN se somente estiver na
2FN e todos os atributos no chave forem de-
o permite ao usurio definir tabe- pendentes no transitivos da chave primria
las novas e elementos associados. A (cada atributo for funcionalmente dependente
maioria dos bancos de dados de SQL apenas dos atributos componentes da chave
comerciais tem extenses proprietrias primria ou se todos os seus atributos no cha-
no DDL. ve forem independentes entre si
Exemplos: o Uma relao est na Terceira Forma
o CREATE cria um objeto (uma Normal se estiver na 2FN e todos os atri-
Tabela, por exemplo) dentro do base de butos no chave forem dependentes no
dados; transitivos da chave primria
o DROP apaga um objeto do (BCNF) Forma Normal Boyce-Codd  -
banco de dados. Uma relao est na FNBC se e s se todo o
o ALTER TABLE; determinante da relao for uma chave candi-
data.
DCL (Data Control Language) a lin-
guagem de controle de dados, usada pelo DBA
para controlar o acesso aos dados pelos usu- REFERNCIAS BIBLIOGRFICAS .
rios. Possui comandos de atribuio e remoo DATE, C, J. Introduo Sistemas de Bancos de Dados.
de privilgios. Exemplos: Grant, Revoke, Profi- 7 edio, Rio de Janeiro - RJ; Editora Campus
le 1999.
Restries de Integridade HEUSER, Carlos Alberto. Projeto de banco de dados,
Imprenta: 3 ed. Porto Alegre:Sagra Luzzatto,
De Domnio  especifica que, para um 2000
certo atributo A de uma relao, todo valor as-
SILBERSCHARTZ, Abraham; KORTH, Henry;
sociado a A deve ser atmico e pertencente ao
SUDARSHAN, S. Sistemas de Banco de Dados.
domnio deste atributo
3 edio, So Paulo: Makron Books 1999
Referencial  que se uma tupla T2 de
uma relao R2 referencia uma tupla T1 de
uma relao R1,ento a tupla T1 deve existir ou Atualizado em: 15/dez/2008
ser nula
De Vazio (nulo)  Se o valor de um a-
tributo pode ou no ser nulo
De Chave  especifica que nenhuma
das tuplas de uma relao pode possuir valor
nulo para nenhum dos atributos que formam
sua chave primria

Você também pode gostar