1 unidade 5 – exploração de uma base de dados em ambiente windows eb23 de cercal do alentejo –...

29
1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática Carlos Sebastião - 2001

Upload: internet

Post on 17-Apr-2015

108 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

1

Unidade 5 – Exploração de uma base de dados em ambiente

Windows

EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à InformáticaCarlos Sebastião - 2001

Page 2: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

2

A evolução

Desde os tempos mais remotos, o homem sentiu necessidade de armazenar e processar informação.

Page 3: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

3

Mais tarde com/o aparecimento do papel

tornou possível a “massificação” da informação.

Page 4: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

4

Com o aparecimento do computador estes começam a ser utilizados para armazenar e tratar grandes quantidades de

dados relacionados com diversas situações.

Page 5: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

5

Implementação do suporte à informação

• Sistemas de ficheiros

• Sistemas de base de dados

Page 6: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

6

Sistema de ficheiros

AplicaçãoA

AplicaçãoB

AplicaçãoC

AplicaçãoD

Programas Dados

Ficheiro X

Ficheiro Y

Ficheiro Z

Page 7: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

7

Sistema de ficheiros

• Os utilizadores (por intermédio de programas específicos) trabalham directamente com os ficheiros.

• Os ficheiros são partilhados por diversos programas ou seja poderão existir vários programas ou pessoas que podem alterar, actualizar e ler um mesmo ficheiro.

Page 8: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

8

Sistema de Base de Dados

AplicaçãoA

AplicaçãoB Base

deDados

SGBD

Sistema de base de dados

Sistema de gestão de base de dados

Page 9: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

9

Sistema de Gestão de Base de DadosO SGBD é o software que tem como objectivo fazer a gestão de todo o armazenamento e manipulação dos dados do sistema, fazendo a ligação entre os programas e a base de dados propriamente dita;

• Uma característica da base de dados: Os dados estão todos incluídos num só ficheiro de armazenamento.

• Para ler ou escrever dados é necessário passar sempre pelo Sistema de Gestão de Base de Dados (SGBD) que é responsável pelo acesso à base de dados.

• O principal vantagem obtida com esta tecnologia é o isolamento que existe entre os programas e os dados.

Page 10: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

10

Modelos de base de dados

• 1ª geração (Evolução do sistemas de gestão de ficheiros)– O Modelo Hierárquico– O Modelo em Rede

• 2ª geração– O Modelo Relacional

• 3ª geração– ...

Page 11: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

11

Modelo Relacional• Nasceu a partir de um desenvolvimento teórico,

com base na teoria dos conjuntos.• É o mais implantado no mercado.• Os SGBD‘s mais representativos:

– DB2 da IBM– Informix– Oracle– SQL Server da Microsoft– Microsoft Access

Page 12: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

12

Modelo Relacional – alguns Conceitos

• Tabela - Estrutura fundamental do modelo relacional.

CodProduto Designação Preço1222 Disco 200

3232 Disquete 0,5

1231 Rato 2

REGISTO(Correspondente a

um produto)

Nome dosCAMPOS

Tabela: Produto

Esquema relacional: Produto(CodProduto, Designação, Preço)

Valor do campo

Page 13: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

13

Tabela• Estrutura bidimensional

• Zero ou mais registos

• Um ou mais campos (atributos)

• Ao número de campos da tabela dá-se o nome de grau da relação

• Ao número de registos designa-se de cardinalidade da relação

Page 14: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

14

Características das tabelas no modelo relacional

• No cruzamento de uma linha (registo) com uma coluna (campo) só é possível encontrar um valor.

• Os nomes dos campos de uma tabela devem ser diferentes.

• Os registos de uma tabela devem ser diferentes.• A ordem dos registos na tabela, tal como a ordem dos

campos no desenho da tabela não tem qualquer significado.

• Todos os valores de um determinado campo tem o mesmo domínio (são do mesmo tipo de dados). O valor de alguns campos podem ser desconhecidos ou não existir.

Page 15: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

15

ChavesChave primária• É formada por UM ou MAIS campos que têm um

valor exclusivo para cada registo (constitui um identificador exclusivo para cada registo da tabela - cada tabela deve incluir um campo ou um conjunto de campos que identifiquem de forma única cada registo armazenado na tabela.)

Chave estrangeira (ou chave externa ou chave importada)

• É um conjunto de UM ou MAIS campos que são chave primária numa outra tabela.

Page 16: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

16

Chave estrangeira

• Uma chave estrangeira numa tabela é necessária para manter a interligação entre essa tabela e a tabela onde esses atributos são chave primária.

• No modelo relacional a única forma de relacionar dados de diferentes tabelas é através de campos comuns (chaves estrangeiras) às tabelas que se relacionam. Se registos (linhas) individuais de duas tabelas tem o mesmo valor no(s) campo(s) comum/comuns é porque estão relacionadas.

Page 17: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

17

Exemplo – Tabelas relacionadas

• Se tivermos 2 tabelas – Departamentos e Funcionários, a única forma de indicar que um dado funcionário trabalha num dado departamento é incluir na tabela Funcionários a identificação do departamento onde esse funcionário trabalha (ou seja, importando para a relação Funcionários a chave primária da tabela Departamentos).

Page 18: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

18

Exemplo

Neste exemplo cod_dep que é chave primária na tabela Departamentos, é chave estrangeira na tabela Funcionários.

Se este campo não existisse na relação Funcionários, não seria possível relacionar as duas tabelas.

Cod_dep Departamento ...

aaa Informática ...

bbb Produção ...

zzz Comercial ...

Cod_func Nome ... Cod_dep

1231 J. Silva ... aaa

3233 A. Costa ... zzz

2323 C. Cunha ... zzz

4343 J. Silva bbb

Departamentos

Funcionários

Page 19: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

19

Álgebra relacional• Manipulação do modelo relacional• Operações da teoria de conjuntos (união,

intersecção, diferença e produto cartesiano) aplicadas às tabelas.

• Outros operadores específicos do modelo relacional: – Selecção de registos numa tabela (selecção).– Selecção de campos de uma tabela (projecção).– Junção de duas tabelas, originando uma

terceira.– Divisão de duas relações, originando uma

terceira.

Page 20: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

20

UNIÃO• Tabela3 = (Tabela1 Tabela2)

A B C

1 2 3

4 5 6

7 8 9

10 2 7

A B C

1 2 3

4 5 9

4 5 6

A B C

1 2 3

4 5 6

7 8 9

10 2 7

4 5 9

=

Esta operação exige que as duas tabelas iniciais tenham esquemas compatíveis (i.e., mesmo grau e o domínio dos campos correspondentes sejam os mesmos). Os registos (linhas) da tabela resultado são registos da tabela1 ou da tabela2 ou de ambas. Os registos duplicados são eliminados.

Page 21: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

21

INTERSECÇÃO• Tabela3 = (Tabela1 Tabela2)

A B C

1x 2v 3z

4x 5v 6z

7x 8v 9z

10x 2v 7z

A B C

1x 2v 3z

4x 5v 9z

4x 5v 6z

A B C

1x 2v 3z

4x 5v 6z

=

Esta operação exige que as duas tabelas iniciais tenham esquemas compatíveis (i.e., mesmo grau e o domínio dos campos correspondentes sejam os mesmos).

A tabela resultado consiste nos registos comuns às duas tabelas.

Page 22: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

22

DIFERENÇA• Tabela3 = (Tabela1 Tabela2)

A B C

1x 2v 3z

4x 5v 6z

7x 8v 9z

10x 2v 7z

A B C

1x 2v 3z

4x 5v 9z

4x 5v 6z

A B C

7x 8v 9z

10x 2v 7z

=

Esta operação exige que as duas tabelas iniciais tenham esquemas compatíveis (i.e., mesmo grau e o domínio dos campos correspondentes sejam os mesmos).

A tabela resultado consiste nos registos que não existem na tabela2.

Page 23: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

23

PRODUTO CARTESIANO• Tabela3 = (Tabela1 Tabela2)

A B

1x 2v

4x 5v

10x 2v

C D

1z 2y

4z 5y

A B C D

1x 2v 1z 2y

1x 2v 4z 5y

4x 5v 1z 2y

4x 5v 4z 5y

10x 2v 1z 2y

10x 2v 4z 5y

=

Os registos (linhas) da tabela resultado correspondem a todas as combinações das linhas da tabela1 com as linhas da tabela2.

A cardinalidade resultante é igual à multiplicação da cardinalidade de cada uma das duas tabelas iniciais.

Page 24: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

24

SELECÇÃO• Tabela2 = <condição> (Tabela1)

(B=5v) =

Esta operação toma uma tabela inicial (tabela 1) e origina uma outra tabela com o mesmo esquema da primeira, mas em apenas os registos que verificam uma dada condição estão presentes

A B C

1x 2v 3z

4x 5v 6z

7x 8v 9z

4x 5v 6z

A B C

4x 5v 6z

4x 5v 6z

Page 25: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

25

PROJECÇÃO• Tabela2 = <lista de campos> (Tabela1)

(B,C) =

Esta operação toma uma tabela inicial (tabela 1) e origina uma outra tabela cujo esquema é reduzido ao conjunto de atributos presentes na lista de atributos.

A B C

1x 2v 3z

4x 5v 6z

7x 8v 9z

4x 5v 6z

B C

2v 3z

5v 6z

8v 9z

Page 26: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

26

JUNÇÃO NATURAL• Tabela3 = (Tabela1 Tabela2)

A B C

1x 2v 3z

4x 5v 6z

7x 8v 9z

C D

3z 2y

6z 5y

3z 5y

=

Esta operação é utilizada para combinar registos de diferentes tabelas (tabela1 e tabela2), com campos comuns, numa só tabela.

A tabela final contém um registo por cada combinação de registos das duas tabelas que possuam valores iguais nos atributos comuns.

O esquema da tabela final consiste na “soma” dos esquemas das relações iniciais.

A B C D

1x 2v 3z 2y

1x 2v 3z 5y

4x 5v 6z 5y

Page 27: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

27

DIVISÃO• Tabela3 = (Tabela1 Tabela2)

A B C D

1x 2v 3z 3y

4x 5v 6z 5y

7x 8v 9z 4y

10x 2v 7z 6y

C D

3z 3y

6z 5y

A B

1x 2v

4x 5v

=

Os campos da tabela2 devem estar contidos na tabela1.

Os campos presentes na tabela final são os campos da tabela1 que não estão presentes na tabela2.

Os registos da tabela final são aqueles que existem na tabela1, em combinação com todos os registos da tabela2.

Page 28: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

28

• Das várias operações apresentadas, apenas a união, a diferença, o produto cartesiano, a selecção e a projecção são operações primitivas.

• A intersecção, a junção, a divisão podem ser definidas a partir das primeiras.

Ex: T1 T2 = T1 – (T1 - T2)

Page 29: 1 Unidade 5 – Exploração de uma base de dados em ambiente Windows EB23 de Cercal do Alentejo – Ensino Secundário Recorrente - Introdução à Informática

29

Exemplo(álgebra relacional)

Alunos (número, nome, curso, média)

• Como traduzir para álgebra relacional a seguinte pergunta:

“Indique o nome e número dos alunos com média final inferior a 14?”

TabelaResultado = ( número,nome ( média < 14 (Alunos)) )