Capítulo 5: Outras linguagens
 Query-by-Example (QBE)
 Datalog
Database System Concepts
5.1.1
©Silberschatz, Korth and Sudarshan (modificado)
Query-by-Example (QBE)
 Estrutura básica
 Perguntas apenas numa relação
 Perguntas em várias relações
 A Condition Box
 Exemplo do Access
Database System Concepts
5.1.2
©Silberschatz, Korth and Sudarshan (modificado)
QBE — 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 com padrões, “por exemplo”
Database System Concepts
5.1.3
©Silberschatz, Korth and Sudarshan (modificado)
Tabelas QBE para o exemplo do banco
Database System Concepts
5.1.4
©Silberschatz, Korth and Sudarshan (modificado)
Tabelas QBE (Cont.)
Database System Concepts
5.1.5
©Silberschatz, Korth and Sudarshan (modificado)
Perguntas 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
Database System Concepts
5.1.6
©Silberschatz, Korth and Sudarshan (modificado)
Perguntas numa só relação (Cont.)

Encontrar os números dos empréstimos de valor superior a 700
 Nome de agências que não sejam em Brooklyn
Database System Concepts
5.1.7
©Silberschatz, Korth and Sudarshan (modificado)
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
Database System Concepts
5.1.8
©Silberschatz, Korth and Sudarshan (modificado)
Perguntas em várias relações
 Nomes de todos os clientes com empréstimos na agência
Perryridge
Database System Concepts
5.1.9
©Silberschatz, Korth and Sudarshan (modificado)
Condition Box
 Permite impor condições extra sobre atributos.
 E.g. Números de empréstimos feitos pelo Smith, pelo
Jones, ou por ambos
Database System Concepts
5.1.10
©Silberschatz, Korth and Sudarshan (modificado)
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
Database System Concepts
5.1.11
©Silberschatz, Korth and Sudarshan (modificado)
Outras features
 Com o QBE é ainda possível executar 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!!
Database System Concepts
5.1.12
©Silberschatz, Korth and Sudarshan (modificado)
Microsoft 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
Database System Concepts
5.1.13
©Silberschatz, Korth and Sudarshan (modificado)
Exemplo em Access QBE
 Encontrar os nomes de clientes, saldo e número de conta de
todos as contas da agência de Perryridge
Database System Concepts
5.1.14
©Silberschatz, Korth and Sudarshan (modificado)
Download

Acetatos - centria