modelo de base de dados relacional nas bases de dados relacionais a estrutura fundamental é a...

17
Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela • Uma relação é definida por um esquema que é composto pelo nome da relação e por um ou mais atributos

Upload: madalena-carneiro-carreira

Post on 07-Apr-2016

217 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Modelo de base de dados relacional

• Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela

• Uma relação é definida por um esquema que é composto pelo nome da relação e por um ou mais atributos

Page 2: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Tabela: objectos, atributos e valores

Page 3: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Modelo relacional: Relação (ou Tabela)

Dada uma colecção de conjuntos de valores (domínios) D1, D2 ,..., Dn , define-se o seu produto cartesiano

D1x D2 x...x Dn

A cada tuplo (a1, a2, ..., an) deste produto cartesiano dá-se o

nome de instância. R é uma relação (ou tabela) se for um subconjunto de

instâncias.

Cada elemento da relação (ou tabela) é designado por registo

da tabela.

Page 4: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

BDs em geral: registos/campos/valoresDados geográficos:

objectos/atributos/valores,em que os objectos podem ser polígonos,

linhas, pontos, ...

Page 5: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Structured Query Language (SQL)

SQL é uma linguagem normalizada (ANSI) para consultas e actualizações de bases de dados relacionais.

Page 6: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

SQL : sintaxe

SELECT [predicate] { * | table.* | [table.]field1 [AS alias1] [, [table.]field2 [AS alias2] [, ...]]}

FROM tableexpression [, ...] [WHERE... ][GROUP BY...][HAVING... ][ORDER BY... ];

Page 7: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

A instrução SELECT

As consultas a uma base de dados relacional fazem-se em SQL recorrendo à instrução SELECT. Esta instrução permite criar conjuntos de registos de uma ou mais tabelas da base de dados seleccionados segundo diversos critérios.

Page 8: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Seleccionar todos os objectos

Sintaxe — 1ª variante:SELECT { * | table.* | [table.]field1 [, [table.]field2 [, ...]]}FROM table;

onde * especifica que todos os campos devem ser seleccionados

table especifica o nome da tabela que contém os campos e os registos seleccionados

field especifica os nomes dos campos que são seleccionados

Page 9: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

A cláusula WHERE

permite especificar uma condição que os registos seleccionados verificam.

Sintaxe — 2ª variante:SELECT fieldlistFROM tableWHERE condition;

onde condition é uma condição que os registos seleccionados verificam;

podem ser utilizados por exemplo:• operadores relacionais (<, <=, >, >=, =, <>) , • operadores lógicos (NOT, AND, OR) e os • operadores IN, BETWEEN e LIKE.

Page 10: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Select * From conc Where “AREA” > 500000000

Page 11: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Nota: numa pesquisa um conjunto de caractéres pode ser representado por * ou por %.

Exemplo: Select * From solos Where “NOME” like ‘L%’

Page 12: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Select * From rios Where "TIPO" = 'Principal' OR "DESIGNACAO" in ( 'Fronteira terrestre', 'Fronteira marítima')

Page 13: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Modelo relacional - Chave candidata

• Quando um atributo de uma dada relação toma valores diferentes para cada instância dessa relação diz-se que esse atributo é uma chave candidata.

Page 14: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Modelo relacional - Chave primária

• Considera-se chave primária de uma relação um subconjunto mínimo de atributos cujos valores permitam distinguir todas as instâncias dessa relação.

Page 15: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Tabelas: chaves estrangeiras

• Uma chave estrangeira de uma relação é um conjunto de atributos que é chave primária de outra relação.

Page 16: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Exemplo: duas tabelas relacionadas

Polígono(número,cód-conc)Concelho(cód-conc,nome)

polígono representa concelho1:11:n

númerocód-conc

cód-concnome

Page 17: Modelo de base de dados relacional Nas bases de dados relacionais a estrutura fundamental é a relação ou tabela Uma relação é definida por um esquema que

Cruzamento de tabelas (Join)

Exemplo:

Cruzamento:

25 RC1180226 RC11808

RC11802 BragançaRC11808 Vinhais

Chave estrangeira Chave primária

25 RC11802 Bragança26 RC11808 Vinhais