14
©Silberschatz, Korth and Sudarshan (modificad 5.1.1 Database System Concepts Capítulo 5: Outras linguagens Capítulo 5: Outras linguagens Query-by-Example (QBE) Datalog

Capítulo 5: Outras linguagens

Embed Size (px)

DESCRIPTION

Capítulo 5: Outras linguagens. Query-by-Example (QBE) Datalog. Query-by-Example (QBE). Estrutura básica Perguntas apenas numa relação Perguntas em várias relações A Condition Box Exemplo do Access. QBE — Estrutura de base. Linguagem gráfica de perguntas a bases de dados relacionais - PowerPoint PPT Presentation

Citation preview

Page 1: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.1Database System Concepts

Capítulo 5: Outras linguagensCapítulo 5: Outras linguagens

Query-by-Example (QBE)

Datalog

Page 2: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.2Database System Concepts

Query-by-Example (QBE)Query-by-Example (QBE)

Estrutura básica

Perguntas apenas numa relação

Perguntas em várias relações

A Condition Box

Exemplo do Access

Page 3: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.3Database System Concepts

QBE — Estrutura de baseQBE — Estrutura de base

Linguagem gráfica de perguntas a bases de dados relacionais

O sistema cria templates de relações solicitadas por utilizadores

As perguntas são feitas “por exemplo”

Page 4: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.4Database System Concepts

Tabelas QBE para o exemplo do bancoTabelas QBE para o exemplo do banco

Page 5: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.5Database System Concepts

Tabelas QBE (Cont.)Tabelas QBE (Cont.)

Page 6: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.6Database System Concepts

Perguntas numa só relaçãoPerguntas numa só relação

Encontrar todos os números de empréstimos da agência Perryridge

• _x é uma variável• P. significa print (display)• os tuplos duplicados são removidos por default• Para reter os duplicados usar P.ALL

Page 7: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.7Database System Concepts

Perguntas numa só relação (Cont.)Perguntas numa só relação (Cont.)

Nome de agências que não sejam em Brooklyn

Encontrar os números dos empréstimos de valor superior a 700

Page 8: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.8Database System Concepts

Perguntas numa só relação (Cont.)Perguntas numa só relação (Cont.)

Números de empréstimos feitos conjuntamente pelo Smith e o Jones.

Todos os clientes que vivem na mesma localidade que o Jones

Page 9: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.9Database System Concepts

Perguntas em várias relaçõesPerguntas em várias relações

Nomes de todos os clientes com empréstimos na agência Perryridge

Page 10: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.10Database System Concepts

Condition BoxCondition Box

Permite impor condições extra sobre atributos.

E.g. Números de empréstimos feitos pelo Smith, pelo Jones, ou por ambos

Page 11: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.11Database System Concepts

Condition Box (Cont.)Condition Box (Cont.)

Números de contas com saldo entre $1,300 e $1,500

Agências com activos maiores que pelo menos os de uma agência em Brooklyn

Page 12: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.12Database System Concepts

Outras featuresOutras features

Com o QBE é ainda possível efecutar ordenação de tuplos, algumas formas de agregação, e modificação de bases de dados.

Tudo o que é possível exprimir com o QBE, também o é com SQL

... mas não vice-versa!!

Page 13: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.13Database System Concepts

Microsoft Access QBEMicrosoft Access QBE

O Microsoft Access suporta uma variante do QBE - Graphical Query By Example (GQBE)

É diferente do QBE em: Em vez de usar variáveis para dizer que os valores de dois atributos

têm que ser iguais, usa linhas a ligar os atributos.

Por default, as linhas especificam inner joins. Mas é possível alterar para outer joins.

As condições, valores a afixar, etc, são especificados na design grid

Page 14: Capítulo 5:  Outras linguagens

©Silberschatz, Korth and Sudarshan (modificado)5.1.14Database System Concepts

Exemplo em Access QBEExemplo em Access QBE

Encontrar os nomes de clientes, saldo e número de conta de todos as contas da agência de Perryridge