Você está na página 1de 27

Direco Regional de Educao doNorte Equipa de rea Educativa de Lea e Baixo Ave

CEF- Instalao e Operao de Sistemas Informticos 2009-2010 Agrupamento de Escolas de Lavra ICORLI

Sistemas de Gesto de Bases de Dados


2009/2010
Paula Porto pporto04@gmail.com

SGBD

ndice
SISTEMAS DE GESTO DE...........................................................................................................................1 BASES DE DADOS............................................................................................................................................1 PAULA PORTO.................................................................................................................................................1 PPORTO04@GMAIL.COM.............................................................................................................................1 NDICE................................................................................................................................................................2 A INFORMTICA NA EMPRESA.................................................................................................................3 DA DEPENDNCIA INDEPENDNCIA DOS DADOS...........................................................................4 OS TRS NVEIS DA ARQUITECTURA DE UM SGBD............................................................................6 FUNES E ESTRUTURA DE UM SGBD....................................................................................................7 OPERAES DE DEFINIO E ALTERAO DA ESTRUTURA DE UMA BD (LINGUAGEM DE DEFINIO DE DADOS DDL).....8 OPERAES DE MANIPULAO DE DADOS SEM ALTERAO DA ESTRUTURA DA BD (LINGUAGEM DE MANIPULAO DE DADOSLMD)...................................................................................................................................................8 OPERAES DE CONTROLO DE DADOS ......................................................................................................................8 O QUE UMA BASE DE DADOS?................................................................................................................9 VANTAGENS NA UTILIZAO DE BDS...................................................................................................9 ESQUEMA E INSTNCIA DE UMA BASE DE DADOS...........................................................................10 MODELOS DE BASES DE DADOS..............................................................................................................11 1. MODELOS BASEADOS EM OBJECTOS:..................................................................................................................11 2. MODELOS BASEADOS EM REGISTOS:...................................................................................................................11 Modelo Hierrquico.................................................................................................................................11 Modelo de rede.........................................................................................................................................12 MODELO ENTIDADE-RELACIONAMENTO...........................................................................................12 ENTIDADES........................................................................................................................................................13 RELACIONAMENTOS............................................................................................................................................13 ATRIBUTOS E OCORRNCIAS................................................................................................................................13 VALORES E DOMNIOS DOS ATRIBUTOS..................................................................................................................14 TIPOS DE ATRIBUTOS...........................................................................................................................................15 ATRIBUTO IDENTIFICADOR...................................................................................................................................15 CHAVE PRIMRIA...............................................................................................................................................15 CHAVE ESTRANGEIRA OU EXTERNA......................................................................................................................16 RELACIONAMENTOS ENTRE ENTIDADES...................................................................................................................17 GRAU DE RELACIONAMENTO................................................................................................................................18 QUALIDADE DE PARTICIPAO..............................................................................................................................19 DERIVAO DE TABELAS......................................................................................................................................19 NORMALIZAO DE TABELAS................................................................................................................20 1 FORMA NORMAL (1 FN)................................................................................................................................21 DEPENDNCIA FUNCIONAL....................................................................................................................................24 2 FORMA NORMAL (2 FN).................................................................................................................................25 3 FORMA NORMAL (3 FN).................................................................................................................................26

CEF Informtica 2009/2010

2/27

SGBD

A informtica na empresa
Ao longo dos tempos a informtica deixou as reas exclusivamente tcnicas e cientficas para se tornar uma ferramenta de uso geral em qualquer sector da actividade humana. Se h uns anos atrs o grande problema residia na limitao quantidade e capacidade de processamento de informao que era possvel tratar num computador, hoje em dia a tecnologia permite ultrapassar isso, criando, no entanto, um outro problema que a qualidade dessa informao. As novas tecnologias permitem tambm explorar melhor as capacidades do computador. A informao deixou de ser apenas texto (smbolos ou caracteres), e passou a incluir imagens e sons. Abrem-se novos campos para a explorao dos sistemas de informao. Sendo as empresas os locais onde mais intensivamente se utiliza a informtica, tambm nelas que as necessidades e quantidades de informao so maiores. O aumento de potncia dos sistemas informticos, assim como a sua aplicao a todos as reas da empresa, proporciona quantidades de informao gigantescas quando comparadas com alguns anos atrs. A necessidade das organizaes em possuir um sistema de gesto mais eficaz torna-as cada vez mais dependentes da informao existente e dos mtodos para a tratar. O tempo das enormes e fastidiosas listagens de computador j passou, hoje a informao tem de ser compreensvel, completa, fcil e rpida de obter. num contexto de necessidade de informao cada vez maior que se insere o aparecimento dos Sistemas de Gesto de Bases de Dados (SGBD). Estes sistemas so um conjunto de programas que fazem uma gesto autnoma da informao, de acordo com um modelo preestabelecido e adaptado empresa. Deste modo vrios programas concebidos em diferentes linguagens, por diversos programadores e executando funes especficas, podem aceder mesma informao. Esta deixa de ser propriedade dos departamentos da empresa e agora encarada como uma entidade nica e autnoma qual vrios e diferentes utilizadores recorrem.

CEF Informtica 2009/2010

3/27

SGBD

Da dependncia independncia dos dados


O Sistema de Gesto de Bases de Dados gere toda a informao contida na base de dados e constitui o interface entre a informao e os utilizadores, quer sejam utilizadores finais quer sejam programadores.

Inicialmente as aplicaes informticas destinadas a gerir os sistemas de informao das organizaes (empresas, administrao pblica, etc...), tinham uma caracterstica: os dados eram dependentes dos programas de aplicao que os geravam e manipulavam. Esta caracterstica logo revelou os seus problemas:

Limitao por parte dos utilizadores s estruturas de dados definidas pelos programadores;

A alterao da estrutura da informao, como por exemplo, incluir ou retirar campos num ficheiro de base de dados, implicava que os programadores tivessem de alterar os programas de aplicao que operavam sobre estes dados;

A dependncia dos dados relativamente s aplicaes implicava que a alterao das estruturas de dados levava quase sempre a uma reintroduo dos dados visto ser necessrios adapt-los aos novos programas e novos formatos definidos;

Numa mesma organizao, a informao encontrava-se repartida e repetida em diversos locais, pois cada departamento criava os seus programas de aplicao de

CEF Informtica 2009/2010

4/27

SGBD
forma autnoma e de acordo com as suas necessidades. Este facto originava a duplicao de informao perfeitamente desnecessria.

Desta forma, tomou-se evidente a necessidade de criar programas ou sistemas de bases de dados capazes de gerir a informao de uma forma mais flexvel, em que os dados pudessem ser separados e organizados de forma independente em relao aos programas de aplicao. E assim, surgiram os Sistemas de Gesto de Bases de Dados (SGBD). Os SGBD so programas ou conjuntos integrados de programas que permitem criar e manipular bases de dados, em que os dados so estruturados com independncia relativamente aos programas de aplicao que os manipulam.

Deste modo, podem ser criadas diversas aplicaes para manipular os mesmos dados ou a mesma base de dados, em conformidade com as necessidades dos seus utilizadores. A independncia dos dados num SGBD significa que possvel alterar a estrutura dos dados de uma base de dados, quer ao nvel fsico quer ao nvel conceptual, sem que isso implique a necessidade de reformular as aplicaes que operam com os dados.

CEF Informtica 2009/2010

5/27

SGBD
No entanto, os sistemas de bases de dados no gerem apenas a informao, eles comportam uma srie de utilitrios que visam facilitar a vida aos utilizadores e programadores. Alguns dos produtos fornecidos pelos maiores fabricantes de SGBD so os seguintes: Motor da base de dados (Data Engine); Linguagem de pesquisa (Query Language); Gerador de listagens (Report Generator); Gerador de entradas de dados (Form Generator); Interfaces para linguagens de programao de 3 gerao; Linguagens de programao de 4 gerao (4GL 4th Generation Language); Processamento distribudo (produtos NET); Bases de dados distribudas (produtos STAR); Interligao com outros sistemas de bases de dados (produtos GATEWAY); Ferramentas: CASE (Computer-Aided Software Engineering);

O SGBD actual fornece empresa um meio slido de armazenamento da informao, suficientemente flexvel para acompanhar as novas tecnologias, e sobretudo generaliza o acesso informao, permitindo que qualquer utilizador atravs de procedimentos simples compile a informao que deseja.

Os trs nveis da arquitectura de um SGBD


Um Sistema de Gesto de Bases de Dados uma coleco de ficheiros de dados interrelacionados e um conjunto de programas ou rotinas que permitem aos utilizadores o acesso informao assim armazenada. Os ficheiros de dados so guardados em suportes de armazenamento informtico (discos, disquetes, cd's, etc...) e, a partir da so manipulados pelos programas ou rotinas do SGBD em execuo no computador. O armazenamento dos ficheiros de dados em suportes informticos e a forma como eles se encontram organizados nesses suportes constitui o chamado Nvel Fsico da base de dados.

CEF Informtica 2009/2010

6/27

SGBD
Alm de operar ao nvel fsico, o SGBD tem tambm de proporcionar aos utilizadores e programadores meios de estruturar ou organizar a informao, afim de esta vir a ser consultada e actualizada pelos utilizadores finais. a esta estruturao e organizao dos dados que se chama o Nvel Conceptual de uma base de dados. Por fim, o chamado Nvel de Visualizao corresponde forma como so apresentados os interfaces grficos aos utilizadores finais, que geralmente no tm, ou so poucos conhecimentos dos nveis fsico e conceptual.

Funes e estrutura de um SGBD


O trabalho com uma base de dados implica diversos tipos de operaes sobre os ficheiros e os dados que eles contm, tais como: Inserir novos registos; Procurar e visualizar um registo; Eliminar registos existentes; Seleccionar registos e/ou campos; Ordenar os registos de um ficheiro; Juntar ou intercalar registos de ficheiros diferentes; Fazer cpias ou duplicaes de ficheiros; Alterar a estrutura de campos de um ficheiro;

CEF Informtica 2009/2010

7/27

SGBD
Eliminar ficheiros;

Assim podemos distinguir os seguintes agrupamentos de operaes tpicas do trabalho com bases de dados:

Operaes de definio e alterao da estrutura de uma BD (Linguagem de Definio de Dados DDL)


Criao de uma nova base de dados; Criao de um novo ficheiro ou tabela; Alterao da estrutura de campos de uma tabela; Criao e alterao de ficheiros de ndices; Eliminao de ficheiros ou tabelas de uma base de dados;

Operaes de manipulao de dados sem alterao da estrutura da BD (Linguagem de Manipulao de DadosLMD)


Consultas ou pesquisas de dados; Insero de novos dados (registos); Alterao de dados existentes (campos e registos); Eliminao de dados (registos);

Operaes de controlo de dados


Tm a ver com a atribuio ou supresso dos direitos de acesso aos dados em relao a utilizadores ou grupos de utilizadores.

CEF Informtica 2009/2010

8/27

SGBD

O que uma Base de Dados?


De um modo geral, pode-se definir uma Base de Dados como sendo um conjunto de dados ou informaes relacionados entre si e organizados de forma a facilitar a sua utilizao por parte do utilizador. Ou ainda, como um sistema cuja finalidade registar, actualizar, manter e disponibilizar a informao relevante para a actividade de uma organizao. Este conjunto de informaes ser partilhado e utilizado para diferentes objectivos e por diferentes utilizadores. No entanto, os utilizadores no s partilham informaes como tambm tm necessidades e perspectivas diferentes dessas informaes. Quando se cria uma base de dados tem-se como objectivos: - Diminuir o espao ocupado pela informao; - Facilitar a actualizao da informao; - Aumentar a velocidade de pesquisa; - Evitar a redundncia de informao.

Vantagens na utilizao de BDs


Os benefcios aqui abordados dividem-se em trs categorias principais, nomeadamente: 1. Benefcios de centralizao de dados: - Reduo/Eliminao de redundncia de dados: evitar a repetio de informao desnecessria, reduzindo tambm o espao ocupado pela base de dados; - Melhoria na concorrncia de dados: aumentar a eficincia no acesso aos dados; - Obteno de informao atempadamente: Aceder e obter informao de forma mais rpida e eficaz; - Simplificao da infra-estrutura de informao: permitir uma estruturao e organizao da informao de forma mais simples permitindo, deste modo, alcanar os pontos referidos acima. 2. Benefcios resultantes de uma melhor gesto de dados:

CEF Informtica 2009/2010

9/27

SGBD
- Organizao e controlo dos dados: a simplificao da prpria estrutura da base de dados implica benefcios na organizao dos dados o que uma mais valia para a gesto e controlo dos dados; - Recuperao, backup e rasteio de dados: por vezes pode acontecer que se percam dados relevantes para a base de dados. Nestes casos importante que hajam mecanismos de recuperao dos mesmos, de forma a ser possvel o seu restauro. importante, tambm, que a base de dados permita a execuo de backups, isto , de cpias de segurana da informao armazenada; - Simplificao e aperfeioamento da segurana: a segurana crucial nos dias de hoje. No s para prevenir ataques externos base de dados, mas tambm como forma de restringir o acesso aos dados por parte de utilizadores sem privilgios para tal; - Melhor integridade dos dados: apresentar os dados com rigor e qualidade. 3. Melhoria de performance atravs de: - Chamadas (calls) de aplicaes: permitem que outras aplicaes, que no aquela que gere a base de dados, acedam aos dados e os utilizem para obter determinados resultados; - Mecanismos de recuperao (unit recovery mechanism, URM): so mecanismos que permitem a qualquer momento restaurar informao perdida pela base de dados.

Esquema e Instncia de uma Base de Dados


Esquema: Consiste no design ou estrutura lgica com que a base de dados definida, o modo como concebida a organizao da informao. Instncia: Refere-se aos dados concretos que a base de dados contm a cada momento, os quais podem variar com a utilizao da base de dados.

O esquema de uma BD concebido segundo um modelo conceptual e implementado num SGBD atravs da sua DDL.

A instanciao de uma BD feita atravs dos recursos de manipulao dos dados do SGBD, portanto ao nvel da LMD.

CEF Informtica 2009/2010

10/27

SGBD

Modelos de Bases de Dados


O desenvolvimento de uma base de dados pode ser efectuado segundo diferentes modelos conceptuais. Estes so um conjunto de ferramentas conceptuais, para descrever os dados, a sua semntica e restries Estes modelos podem ser agrupados em dois tipos:

1. Modelos baseados em objectos:


Representam a realidade atravs de objectos; Os objectos so entidades reais (Aluno, Professor, Disciplina, ...); Alguns modelos: o o o Entidade-Relacionamento; Semnticos; Orientados por Objectos;

2. Modelos baseados em registos:


Representam a realidade atravs de registos; Informao estruturada com o formato de campos; Alguns modelos: o o o Hierrquico; Rede; Relacional.

Modelo Hierrquico
- Uma base de dados concebida segundo o modelo hierrquico consiste numa coleco de registos que se encontram relacionados entre si, atravs de relaes; - A estrutura hierrquica de ligao entre os registos toma o aspecto de uma rvore invertida;

CEF Informtica 2009/2010

11/27

SGBD
- Cada registo (excepto o primeiro) encontra-se ligado a um outro denominado de superior hierrquico; - Se um superior hierrquico for eliminado todos os que se encontram abaixo dele na estrutura hierrquica sero eliminados.

Modelo de rede
- Uma base de dados concebida segundo o modelo hierrquico tambm consiste numa coleco de registos que se encontram relacionados entre si, atravs de relaes; - A estrutura de ligao dos registos j no se apresenta em forma de rvore mas sim em forma de rede, o que implica uma maior flexibilidade em relao forma como se podem ligar os registos.

Modelo Entidade-Relacionamento
O modelo de Entidade-Relacionamento, foi desenvolvido para auxiliar o projecto de base de dados, atravs da especificao de um esquema que define a organizao da base de dados. uma tcnica que:

utiliza uma abordagem top-down; baseia-se na identificao dos grandes objectos informacionais com interesse para o sistema a informatizar e nas associaes entre estes;

por ser grfica, e suportar um nmero limitado de smbolos, permite representar o modelo de informao com: o clareza;

CEF Informtica 2009/2010

12/27

SGBD
o o o reduo de esforo; facilidade de compreenso; facilidade de apresentao.

O modelo E-R baseado na percepo de que o mundo real constitudo por dois objectos: entidades e relacionamentos.

Entidades
So elementos relevantes, abstractos ou concretos, sobre os quais necessrio guardar informao. Por exemplo:

Pessoas ( Fornecedores, Empregados, Clientes, Alunos, etc...) Organizaes ( Empresas, Hospitais, Escolas, Farmcias, etc...) Objectos ( Carro, Factura, Produtos, Boletim de Incrio, etc...)

Relacionamentos
Aps a identificao das entidades a incluir no esquema da BD, e dos atributos que as definem, necessrio perceber o modo como estas entidades se relacionam entre si. Assim, um relacionamento uma associao existente entre entidades.

Atributos e Ocorrncias
Uma entidade definida por um conjunto de dados que de alguma forma se encontram relacionados. Os dados numa entidade encontram-se divididos em campos ou atributos que so os elementos que a caracterizam.

CEF Informtica 2009/2010

13/27

SGBD

A cada ocorrncia relativa a uma entidade d-se o nome de registo. Relao: Estrutura lgica representada por uma tabela com linhas e colunas. Atributo: Coluna qual atribumos um nome. Registos/Tuplos: Linha da relao. Grau: Nmero de atributos de uma relao. Cardinalidade: Nmero de registos de uma relao. Domnio: Conjunto de valores permitidos para um ou mais atributos.

Valores e Domnios dos atributos


Os atributos das entidades so preenchidos com VALORES. So estes valores que caracterizam e identificam cada entidade. Exemplo: O nome prprio de uma pessoa: Ana, Maria, Joo, Francisco, etc... O estado civil de uma pessoa: Solteiro, casado, divorciado. Cada atributo de uma entidade pode tomar os seus valores dentro de um determinado conjunto DOMNIO que no mais do que o conjunto de todos os valores que esse atributo pode assumir. Exemplo:

CEF Informtica 2009/2010

14/27

SGBD
Os valores para a idade de uma pessoa s podem ser numricos, nunca podendo conter valores alfanumricos. Assim, o seu domnio ser o dos nmeros inteiros.

Tipos de atributos
Os atributos de uma entidade podem ser de dois tipos: ATMICOS No possvel decompor esses atributos em unidades mais elementares. Exemplo: n de aluno, idade, nome prprio, BI, NIF, etc... COMPOSTOS So atributos que podem ser decompostos em unidades mais elementares. Exemplo: - O nome completo de uma pessoa pode ser decomposto em nome prprio, sobrenome e restantes. - A data que pode ser decomposta em dia, ms e ano. - A hora que pode ser decomposta em hora, minuto e segundo.

Atributo Identificador
Entre os diversos atributos que definem uma entidade deve existir um ou mais campos que identifiquem inequivocamente cada registo. A este(s) atributo(s) d-se o nome de Atributo Identificador. ATRIBUTO IDENTIFICADOR o atributo que deve identificar sem ambiguidades cada entidade concreta. Para cada entidade deve existir sempre um atributo deste tipo. Geralmente, este atributo desempenha o papel de chave numa entidade ou tabela. Exemplo: Consideremos a entidade Filmes e os seus atributos: FILMES (N Filme, Ttulo, Actor, Realizador, Durao, Classificao) O campo N Filme um atributo identificador pelo facto de identificar inequivocamente cada ocorrncia (filme) da entidade.

Chave Primria
CHAVE PRIMRIA um atributo identificador que representa univocamente cada ocorrncia ou registo de uma tabela.

CEF Informtica 2009/2010

15/27

SGBD
Existem dois tipos de chave primria: Simples - constituda apenas por um atributo; Composta - constituda por dois ou mais atributos. Uma chave primria deve ser: Unvoca O valor da chave primria deve ser nico para todos os registos. No Redundante No caso de uma chave composta no devem ser includos mais campos do que os necessrios. No Nula Nenhum dos valores que compem a chave primria pode conter valores nulos. Exemplo 1) Consideremos a entidade Cds que caracterizada pelos seguintes atributos: CDs ( N Cd, Ttulo, Intrprete, Editora) O atributo que a identifica univocamente N de Cd visto ser o nico cujos valores nunca se iro repetir. Deste modo, conclui-se que a chave primria da entidade CDs simples. Exemplo 2) Consideremos a entidade Faixas de um Cd que caracterizada pelos seguintes atributos: Faixas ( N Cd, N Faixa, Ttulo, Durao, Gnero) Neste caso, os atributos que a identificam univocamente so N de Cd e N Faixa, visto serem os nicos cujos valores nunca se iro repetir. Deste modo, conclui-se que a chave primria da entidade Faixas composta.

Chave Estrangeira ou Externa


CHAVE ESTRANGEIRA OU EXTERNA um atributo que definido como chave primria de uma tabela includo na estrutura de uma outra tabela. Exemplo: Consideremos as entidades Cds e Faixas, que identificam um Cd e as suas respectivas Faixas. CDs ( N Cd, Ttulo, Intrprete, Editora) Faixas ( N Cd, N Faixa, Ttulo, Durao, Gnero)

CEF Informtica 2009/2010

16/27

SGBD
O atributo N de Cd da entidade Faixas faz parte da sua chave primria, no entanto como chave primria da entidade CDs considerado uma chave estrangeira na entidade Faixas.

Relacionamentos entre entidades


O relacionamento entre entidades um dos propsitos das bases de dados relacionais, da a importncia dada seleco da chave primria, pois atravs destas que so estabelecidas as associaes entre as diferentes entidades. Os smbolos convencionados para se representar estes relacionamentos so em nmero reduzido, com significados especficos e fceis de distinguir:

Exemplo: Consideremos as entidades Cds e Faixas, e os seus atributos definidos anteriormente. A relao existente entre estas entidades pode ser representada da seguinte forma:

Tipos de Relacionamentos
So as formas como as entidades se relacionam num determinado modelo de informao. As associaes podem classificar-se em unrias, binrias e complexas. UNRIAS associam uma entidade com ela prpria.

CEF Informtica 2009/2010

17/27

SGBD

BINRIAS associam duas entidades.

COMPLEXAS associam mais do que duas entidades.

Tem-se que um atleta que pratica uma determinada modalidade disputa uma prova dessa modalidade. Observao: Regra geral, uma associao do tipo complexa ternria d origem a uma entidade associativa.

Grau de Relacionamento
a participao mxima (limite superior) de cada uma das entidades nas associaes a que est ligada. O grau de relacionamento independente do tipo de associao. Tendo em conta o seu grau, os relacionamentos classificam-se em:

CEF Informtica 2009/2010

18/27

SGBD

Observao: Regra geral, uma associao de grau M:N d origem a uma entidade associativa.

Qualidade de participao
a participao mnima (limite inferior) da entidade na associao a que est ligada. A participao de cada entidade ou pode ser diversa de associao para associao. A qualidade de participao de uma entidade classifica-se em obrigatria e no obrigatria. OBRIGATRIA quando no pode haver qualquer ocorrncia que no esteja associada a alguma ocorrncia da outra entidade que participa na associao. NO OBRIGATRIA quando pode haver ocorrncias numa entidade, mesmo que no associadas a alguma ocorrncia da outra entidade que participa na associao.

Derivao de tabelas
Analisando o grau de relacionamento e a qualidade de participao possvel identificar o nmero de tabelas necessrias para cada relacionamento. Assim: UMA TABELA

Relacionamentos de 1:1 com participao obrigatria de ambas as entidades.

DUAS TABELAS

CEF Informtica 2009/2010

19/27

SGBD
Relacionamento de 1:1 com participao obrigatria de uma das entidades, em que nesta adicionada uma chave externa;

Relacionamentos de 1:N ou N:1 com participao obrigatria do lado N, em que nesta adicionada uma chave externa.

TRS TABELAS A terceira tabela responsvel pelo relacionamento entre as outras duas e nela sero includas como chaves externas as chaves primrias das outras duas. A esta tabela d-se o nome de Entidade Associativa. Relacionamentos de N:N; Relacionamentos de 1:N ou N:1 com participao no obrigatria do lado N; Relacionamentos de 1:1 com participao no obrigatria de ambas asentidades.

Normalizao de tabelas
A normalizao um processo que consiste em estruturar as tabelas e atributos de forma a eliminar redundncias e evitar problemas com a insero, eliminao e actualizao dos dados. Este processo composto pelas chamadas formas normais:

Um modelo de base de dados que respeite os princpios estipulados at 3 FN considerado adequadamente elaborado para funcionar num SGBD relacional. Existe uma hierarquia de formas normais que pode ser apresentada atravs de um conjunto de crculos concntricos.

CEF Informtica 2009/2010

20/27

SGBD

Em geral, este processo de normalizao consiste no seguinte: Definio das entidades com todos os atributos considerados relevantes; Anlise das relaes e dependncias entre os atributos de cada entidade, comparando-as com as formas normais;

Reestruturao de atributos e/ou derivao de entidades sempre que apresentem caractersticas que no estejam de acordo com as formas normais;

Repetio do processo at que todas as entidades estejam na forma normal pretendida.

1 Forma Normal (1 FN)


Uma tabela encontra-se na 1 FN se todos os seus atributos estiverem definidos em domnios que contenham apenas valores atmicos, isto , os domnios devem ser formados por valores elementares e no por conjuntos de valores. Vejamos o seguinte exemplo: Imaginemos uma tabela destinada a registar a informao sobre os alunos e as disciplinas em que estes esto matriculados: 1 caso) ALUNOS (CodAluno, Nome, Morada, Disciplinas)

CEF Informtica 2009/2010

21/27

SGBD
Esta tabela no obedece primeira forma normal (1FN), uma vez que o atributo Disciplinas admite conjuntos de valores. Consideremos a tabela com alguns dados como exemplo:

Morada
Como podemos constatar, o atributo Disciplinas apresenta o conjunto de disciplinas frequentadas por cada aluno. Poderamos, no entanto, repetir os valores na tabela para que o atributo Disciplinas apenas contivesse um nico valor (2 caso). 2 caso) ALUNOS (CodAluno, Nome, Morada, Disciplina1, Disciplina2, Disciplina3,...) Esta tabela no obedece primeira forma normal (1FN) porque, embora todos os campos sejam atmicos, existem campos repetidos para a mesma categoria. Consideremos a tabela com alguns dados como exemplo:

Como podemos constatar os atributos Disciplina1, Disciplina2 e Disciplina3 aparecem como campos repetidos para a mesma categoria. A soluo para este problema, ou seja, para a tabela se encontrar na 1 FN a apresentada no 3 caso. 3 caso) ALUNOS (CodAluno, Nome, Morada, Disciplina)

CEF Informtica 2009/2010

22/27

SGBD

A tabela ALUNOS agora est na 1FN, pois todos os atributos contm apenas valores elementares. Apresenta, no entanto, grande redundncia de informao, que se reflecte na repetio dos identificadores dos nomes e moradas dos alunos. Para alm desse inconveniente, podem apontar-se ainda os seguintes:

Problemas de actualizao - se a morada de um aluno for alterada, essa alterao tem de ser feita em vrias linhas da tabela, sob o risco de gerar incoerncias na Base de Dados, isto , numa determinada linha o aluno poder aparecer uma morada e noutra linha outra;

Problemas de insero com a tabela estruturada desta maneira torna-se impossvel registar um aluno que no esteja matriculado a nenhuma disciplina mas que se encontra a fazer apenas exames, sem o atributo DISCIPLINA fique com valor nulo no obedecendo regra de integridade de entidade;

Problemas de eliminao - porque para anular a matrcula de um aluno implica ter de eliminar vrias linhas da tabela, e mesmo perder a informao do aluno, tal como NMERO, NOME e MORADA.

CEF Informtica 2009/2010

23/27

SGBD

Dependncia funcional
Um atributo ou conjunto de atributos determinante de outros atributos quando os identifica de modo unvoco. Os atributos identificados de modo unvoco por um outro atributo, ou conjunto de atributos, so funcionalmente dependentes deste ltimo. Considerando a seguinte entidade: ALUNOS (CodAluno, Nome, Morada, CodDisciplina, Disciplina) Temos que: - Nome e Morada so dependentes de CodAluno - Disciplina dependente de CodDisciplina

CEF Informtica 2009/2010

24/27

SGBD

2 Forma normal (2 FN)


Uma tabela encontra-se na 2 FN se: estiver na primeira forma normal (1FN); todos os atributos que no pertencem chave, dependem da chave atravs de uma dependncia funcional elementar, isto , dependem da totalidade da chave e no de um dos seus atributos ou subconjuntos isoladamente. Esta condio evidentemente s se aplica no caso da chave ser composta por mais de um atributo. Caso a chave seja constituda por um nico atributo, chave simples, a condio imposta que os restantes atributos dependam funcionalmente da chave. Vejamos o seguinte exemplo: Imaginemos uma tabela destinada a registar a informao sobre as encomendas efectuadas por clientes e os produtos nelas contidos: ENCOMENDAS (N Encomenda, DataEnc, TotalEnc, CodCliente, NomeCli, Morada, CodProduto, Designao, PreoUnitrio, Quantidade, TotalProd)

A tabela encontra-se na 1 FN porque todos os campos so atmicos e no existe repetio de valores;

O campo N Encomenda identifica cada encomenda feita por um cliente; De N Encomenda dependem os campos: DataEnc, TotalEnc, CodCliente, NomeCli e Morada;

De CodProduto dependem os campos: Designao, PreoUnitrio, Quantidade, TotalProd;

A tabela no se encontra na 2 FN porque existem campos que dependem de partes da chave. Assim, aplicando a normalizao, obtm-se as seguintes tabelas: ENCOMENDAS (N Encomenda, DataEnc, TotalEnc, CodCliente, NomeCli, Morada) DETALHE (N Encomenda, CodProduto, Designao, PreoUnitrio, Quantidade, TotalProd)

CEF Informtica 2009/2010

25/27

SGBD
A tabela ENCOMENDAS encontra-se na 2 FN, visto j estar na 1 FN e ter um chave simples, o que implica que todos os atributos no-chave dependem da totalidade da chave;

A tabela DETALHE no se encontra na 2 FN, porque existem alguns atributos no-chave que dependem funcionalmente de parte da chave;

De N Encomenda dependem os campos: CodProduto, Quantidade e TotalProd; De CodProduto dependem os campos: CodProduto, Designao, PreoUnitrio.

Assim, obtemos as seguintes tabelas: ENCOMENDAS (N Encomenda, DataEnc, TotalEnc, CodCliente, NomeCli, Morada) DETALHE (N Encomenda, CodProduto, Quantidade, TotalProd) PRODUTOS (CodProduto, Designao, PreoUnitrio)

3 Forma normal (3 FN)


Uma tabela encontra-se na 3 FN se: estiver na primeira forma normal (2FN); nenhum atributo no-chave depender funcionalmente de algum outro atributo que no seja a chave, isto , todos os atributos no-chave dependem funcionalmente apenas da chave; Voltando ao exemplo anterior, obtivemos as seguintes tabelas: ENCOMENDAS (N Encomenda, DataEnc, TotalEnc, CodCliente, NomeCli, Morada) DETALHE (N Encomenda, CodProduto, Quantidade, TotalProd) PRODUTOS (CodProduto, Designao, PreoUnitrio) Vamos verificar se as tabelas encontram-se na 3 FN: 1) PRODUTOS (CodProduto, Designao, PreoUnitrio) Entre os seus atributos no-chave (Designao e PreoUnitrio) no existe qualquer dependncia funcional, pelo que a tabela encontra-se na 3 FN. 2) DETALHE (N Encomenda, CodProduto, Quantidade, TotalProd)

CEF Informtica 2009/2010

26/27

SGBD
Entre os seus atributos no-chave (Quantidade e TotalProd) no existe qualquer dependncia funcional, pelo que a tabela encontra-se na 3 FN. 3) ENCOMENDAS (N Encomenda, DataEnc, TotalEnc, CodCliente, NomeCli, Morada) Nesta tabela existe um grupo de atributos no-chave que dependem de um outro atributo no-chave: NomeCli e Morada dependem funcionalmente de CodCliente. Deste modo, conclui-se que esta tabela no se encontra na 3 FN. Assim, devem ser retirados da tabela os atributos dependentes de CodCliente e constituir com eles uma nova tabela: CLIENTES (CodCliente, NomeCli, Morada) Que j se encontra na 3 FN, pois: todos os seus atributos so atmicos (1 FN); tem uma chave simples o que implica que todos os atributos no-chave dependem da totalidade da chave (2 FN);

os atributos no-chave no dependem de nenhum outro atributo no-chave (3 FN);

CEF Informtica 2009/2010

27/27

Você também pode gostar