UFCD 786 - mariajoao.wikispaces.com786.pdf · 3 Noção de Base de Dados (1) •Normalmente uma...

38
UFCD 786 Instalação e configuração de sistemas de bases de dados 1

Transcript of UFCD 786 - mariajoao.wikispaces.com786.pdf · 3 Noção de Base de Dados (1) •Normalmente uma...

UFCD 786

Instalação e configuração de

sistemas de bases de dados

1

Noção de Base de Dados• De uma forma genérica uma base de dados é um conjunto

de dados (BD)

• Exemplos de BD’s:

– Uma agenda de moradas

– Uma lista de cd’s

– Um livro

– Apontamentos das aulas

– Dados guardados nos computadores das Finanças

– World wide web

• Conjunto de registos dispostos em estrutura regular que

possibilita a reorganização dos mesmos e produção de

informação

2

3

Noção de Base de Dados (1)• Normalmente uma base de dados agrupa registos

utilizáveis para um mesmo fim

• Actualmente o termo base de dados é aplicado actualmente principalmente para fazer referência a bases de dados informáticas

• Bases de dados informáticas são conjuntos de dados estruturados/manipulados usando um Sistema de Gestão de Bases de Dados (SGBD) ou Database Management System (DBMS)

• As Bases de Dados são utilizadas em diversas aplicações, abrangendo quase todos os programas informáticos

• São o método preferencial para aplicações multi-utilizador, nos casos em que é necessário existir uma coordenação entre diversos utilizadores

4

Noção de Base de Dados (2)• Normalmente são armazenados num formato que seja

compreendido por uma máquina ou computador

• Existe uma enorme variedade de bases de dados que vai desde simples tabelas armazenadas em um único sitio até bases de dados com milhões e milhões de registos (estas são armazenad em discos rigidos)

• Permite armazenamento de grandes quantidades de dados

• Possibilita realizar com rapidez um conjunto de operações simples de processamento de dados

• Tem como objectivo registar, actualizar, manter e disponibilizar informação relevante para a actividade de uma organização

5

Noção de Base de Dados (3)• Exemplos de grandes bases de dados:

• A internet:– Neste caso os dados são todas as páginas publicadas

– Para encontrarmos uma informação teremos de pesquisar nos habituais motores de busca que estão constantemente a aceder a bases de dados

• Bases de Dados via Internet:– Bibliotecas online

– Wikipédia

– Bancos

• Bases de Dados nas escolas:– Elaboração de horários

– Gestão de alunos

– Gestão de professores

– Gestão de pagamentos

6

Conceitos Base (1) • Dados: valores discretos que só se transformam

em informação quando relacionados ou

interpretados de alguma forma

• Informação: consiste na interpretação dos dados

num determinado momento

• Dados: Nuno / 30 / Aveiro

• Informação: O Nuno tem 30 anos e mora em

Aveiro

7

Conceitos Base (2) • Operações básicas sobre dados:

– Selecção – Quantos Anos tem o Nuno?

Onde mora o Nuno?

– Inserção – Inserção de informação através de dados “A

Joana tem 5 anos e mora em Lisboa”

– Actualização – Actualização de dados “O Nuno mora em

Aveiro mas tem 20 anos”

– Eliminação – Eliminação de informação

• As bases de dados permitem:

– Confidencialidade da informação

– Integridade da informação – deve garantir a inexistência

de redundância e garantir a não deterioração dos dados

8

Sistemas de Gestão de Base de Dados( SGBD)

• Permite criar e manipular Bases de Dados em que

os dados são estruturados de modo independente

aos programas que os manipulam

• Disponibiliza linguagens de :

– Definição de dados – criação e alteração da

estrutura da BD

– Consulta de dados – obter e processar os dados

armazenados

– Manipulação de dados- acrescentar novos dados

e modificar dados existentes

9

Sistemas de Gestão de Base de Dados( SGBD) - 1

10

Sistemas de Gestão de Base de Dados( SGBD) - 2

• Arquitectura de uma SGBD:

– Nivel 1 – Nivel Físico

• Suportes informáticos para o armazenamento dos

ficheiros de dados (disquetes, discos, pen’s,...)

• Forma como eles se encontram organizados nesse

suporte

– Nivel 2 – Nível Conceptual

• Estruturação /organização da informação em tabelas

e formas de relacionamento entre entidades

– Nivel 3 – Nível de Visualização

• Forma como os dados são apresentados aos

utilizadores finais , através de interfaces gráficas

11

Sistemas de Gestão de Base de Dados( SGBD) - 3

• Outras caracteristicas:

– Acesso simultâneo

• Vários utilizadores podem aceder e alterar a BD ao mesmo

tempo sem criar inconsistências. Por exemplo 2 utilizadores

diferentes podem consultar simultaneamente os mesmos

dados de um cliente.O SGBD não permite que ambos os

utilizadores alterem esses dados ao mesmo tempo.

– Vistas

• Diferentes utilizadores poderão ter acesso limitado a certas

partes da BD

– Construção de aplicações

• A tendência actual dos SGBDs é combinarem a gestão de

armazenamento /manipulação dos dados com a construção

das aplicações que implementam os processos da

organização.

12

Sistemas de Gestão de Base de Dados( SGBD) - 4

• Porquê usar SGBDs:

– Independência dos dados• As aplicações acedem e manipulam dados mas não são

responsáveis pelo seu armazenamento

– Acesso eficiente aos dados• Armazenar e recuperar dados com eficiência

– Redução do tempo de desenvolvimento das aplicações• Aplicações mais rebustas do que o normal

– Integridade e segurança dos dados• Reforço de controlos de acesso

– Administração dos dados• Minimizar a redundância e optimizar o armazenamento

– Acesso concorrente e recuperação dos dados • Protege os utilizadores das falhas do sistema

13

Modelo Relacional • Podemos falar em 4 modelos base para definir a forma como

os dados se encontram armazenados no sistema:

– Hierárquico – os dados são organizados numa estrutura

em árvore onde cada registo pertence apenas a um dono

– Em rede – semelhante ao modelo hierárquico excepto que

neste caso cada registo pode possuir mais do que um

“pai”

– Relacional

– Orientado a objectos – toda a informação é guardada na

forma de um objecto (programação)

O modelo que vamos abordar mais profundamente é o

modelo relacional

14

Modelo Relacional (1)• Muitas vezes também chamado de modelo E-R ( Entidade –

Relação )

• conceito abstrato que define maneiras de armazenar,

manipular e recuperar dados estruturados unicamente na

forma de tabelas

• Neste modelo existem 10 regras importantes que devem

sempre ser respeitadas

• As principais vantagens em se usar o modelo relacional é:

– Acesso facilitado aos dados , possibilitando que os

utilizadores utilizam uma grande variedade de

abordagens no tratamento das informações

– A linguagem utilizada neste modelo é o SQL

15

Modelo Relacional (2) - Terminologia

Entidade/tabelas

Abstracção que descreve um grupo de objectos, conceitos

Objecto que existe e é diferente de todos os outros objectos

Uma entidade pode ser concreta como uma pessoa ou um livro ou pode ser abstracta como um feriado ou um conceito

Também pode ser chamado de tabela

É uma estrutura simples que possui linhas e colunas

Ex:Paulo Silva com número de CPF 123.456.789-00 pois identifica unicamente uma pessoa

Ex1:conta número 40167-9 na agência Leiria pois identifica unicamente uma conta de um particular

Conjunto de entidades - conjunto de todas as pessoas com conta em um banco, por exemplo, pode ser definido como o conjunto de todas as entidades cliente.

16

Modelo Relacional (3) - Terminologia

BMW Fiat

Ford VW

Volvo Toyota

Opel Porsche

Serra da

estrela

Cão de água

Podengo

Lavrador

Gato Cão

Baleia Leão

Aranha

Golfinho

Marcas de Carros

Raças de cães portugueses

Animal

17

Modelo Relacional (4) - Terminologia

• Atributo

– Caracteristica que identifica uma entidade

• Dominio

– Conjunto de valores que um determinado

atributo pode tomar

• Ocorrência/instância

– “caso particular” da entidade

18

Modelo Relacional (5) - Terminologia

• Para cada atributo, existe um conjunto de valores permitidos chamado domínio daquele atributo

• O domínio do atributo nome-cliente pode ser o conjunto de todas as cadeias de texto (strings) de um certo tamanho

• o domínio do atributo número-conta pode ser o conjunto de todos os inteiros positivos.

• O atributo idade de uma entidade pessoa poderia ter como domínio os números inteiros entre 0 e 150.

• toda entidade é descrita por um conjunto de pares (atributo, valor do atributo)

• Ex. entidade cliente é descrita pelo conjunto {(nome, Paulo Silva), (cpf, 123.456.789-00), (rua, XV de Novembro), (cidade, Campinas)}, que significa que a entidade descreve uma pessoa chamada Paulo Silva, cujo CPF é 123.456.789-00, residente à rua XV de Novembro, em Campinas.

19

Modelo Relacional (6) - Terminologia

20

Modelo Relacional (7) - Terminologia

Ex3:

Perspectiva do Veterinário

Nome:texto Raça:texto Sexo:{M,F} Peso: Kg

Bobi Rafeiro M 7

Laika Serra da Estrela F 15

• Perspectiva da Câmara Municipal

Nome:texto Raça:texto Sexo:{M,F} Licença:inteiro

Bobi Rafeiro M 1300

Laika Serra da Estrela F 6789

21

Modelo Relacional (8) - Terminologia

• Atributos – Existem diversos tipos de atributos :

• Compostos– Os atributos compostos podem ser divididos em partes menores

– Por exemplo, um atributo endereço pode ser subdividido em rua, cidade, estado e codPostal

– Poderíamos também dividir o atributo rua em número, nome-ruae número-apartamento

• Simples – São chamados também por atributos atômicos. Eles não são

divisíveis

• Multivalor– são atributos que possuem um ou mais valores para o mesmo

– Por exemplo, o atributo idioma de uma entidade aluno pode conter os valores inglês e francês.

– Para um outro aluno poderia conter apenas um valor - espanhol. Para um terceiro aluno, poderíamos ter 3 valores para este atributo.

22

Modelo Relacional (9) - Terminologia

• Derivado– Alguns atributos podem ter uma relação entre si

– Por exemplo, idade e data-nascimento de uma pessoa

– Para uma pessoa em particular, podemos determinar o valor actual de idade através do atributo data-nascimento.Então idade é chamado um atributo derivado e é derivado do atributo data-nascimento

• Nulo– Em alguns casos, uma entidade pode não necessitar de

um valor aplicável a um de seus atributos

– Por exemplo, no atributo número-apartamento composto visto anteriormente, apenas definiremos valores para este campo quando a entidade pessoa em particular morar em um prédio

– A representação de um atributo sem valor é colocarmos um valor especial null

– Null também pode ser utilizado quando não conhecemos o valor de um atributo, por exemplo, quando se desconhece a data de nascimento de uma pessoa

23

Modelo Relacional (10) - Terminologia

• Colunas ou atributos

– As colunas de uma tabela são também

chamadas de Atributos

– O conjunto de valores que um atributo

pode assumir chama-se domínio

• Ex:em um campo do tipo numérico, serão

somente armazenados números.

24

Modelo Relacional (11) - DER

• Simbologia para construir DER’s

25

Modelo Relacional (12)- DER • Tipos de relacionamentos

– Existem 3 tipos de relacionamentos

a) Relação 1:1

b) Relação 1:N

c) Relação N:M

Relação 1:1

Lê-se:

1 professor lecciona uma e só uma disciplina

1 disciplina é leccionada por um e só um professor

26

Modelo Relacional (13) - DER Relação 1:N

Lê-se:

Num departamento trabalham vários empregados

Um empregado trabalha num e num só departamento

Relação M:N ou N:N

Lê-se:

1 autor escreve vários livros

1 livro é escrito por vários autores

27

Modelo Relacional (14) - DER

Conectividade de uma Relação Uma entidade pode participar numa relação de 2 formas:

Participação Obrigatória: Não pode existir nenhuma ocorrência dessa - entidade que não esteja associada a alguma ocorrência da outra entidade que participa na relação.

Participação não Obrigatória: Podem existir ocorrências dessa -entidade que não estejam relacionadas a alguma ocorrência da outra entidade que participa na relação.

Ex1:

Lê-se: 1 Factura tem várias Linhas de Factura

1 Linha de Factura pertence a uma e uma só Factura

1 Factura tem Obrigatoriamente Linhas de Factura

1 Linha de Factura pertence Obrigatoriamente a uma e uma só Factura

28

Modelo Relacional (15) - DER Exercicio:

Existe algum obrigatoriedade nesta relação?

Como se lê a respectiva relação?

Resposta:

Existe algum obrigatoriedade nesta relação? Não

Como se lê a respectiva relação?

1 Sócio requisita vários Livros

1 Livro é requisitado por vários Sócios

Nem todos os Sócios requisitam Livros

Nem todos os Livros são requisitados por Sócios

29

Relacionamentos Binários (16)

30

Relacionamentos Binários (17)

31

Relacionamentos Binários (18)

32

Relacionamentos Binários (19)

33

Relacionamentos Binários (20)

34

Relacionamentos Binários (21)

35

Exercicios Coloque as respectivas cardinalidades/obrigatoriadades

em cada relação:

36

O centro de turismo da zona centro quer efectuar uma gestão dos guias de pesca para a região centro. Sabemos que para cada guia devemos guardar um número identificador de guia, o seu nome, morada e telefone e indicar o número de pessoas que leva em cada visita. Sabemos ainda que cada guia tem um preço fixo por hora e que trabalham num determinado rio e numa determinada nascente. Cada guia de pesca apenas serve de guia para um determinado tipo de peixe e não para todos os tipos de peixe e o guia também nos aconselha sempre que tipo de isco devemos usar para esse peixe.

Elabora o respectivo DER correspondente não se esquecendo de colocar todas as cardinalidades necessárias assim como todos os atributos que achar que são importantes.

Exercicios

37

A empresa Xpto possui 3 operários e um supervisor. O

Supervisor tem como principal tarefa na empresa

controlar e supervisionar os 3 operários que trabalham

na empresa. Para cada um dos empregados é preciso

guardar a seguinte informação:

- NºContribuinte; Nome; Morada; telefone; Pagamento/h

do operário; área de competência do supervisor; Nºde

empregado na empresa; Código da tarefa do operário;

Nºextensão do supervisor.

Tendo em atenção os dados anteriores construa o DER

que corresponde ao texto mencionado.

Exercicios