Consulta por exemplo - Query by Example

Exemplo de consulta QBE com joins, projetado no Paradoxo da Borland (banco de dados)

Consulta por exemplo ( QBE ) é uma base de dados de linguagem de consulta para bases de dados relacionais . Foi idealizado por Moshé M. Zloof na IBM Research em meados dos anos 1970, em paralelo ao desenvolvimento do SQL . É a primeira linguagem de consulta gráfica, usando tabelas visuais onde o usuário insere comandos, exemplos de elementos e condições. Muitos front-ends gráficos para bancos de dados usam as idéias da QBE hoje. Originalmente limitado apenas para fins de recuperação de dados , o QBE foi posteriormente estendido para permitir outras operações, como inserções, exclusões e atualizações, bem como a criação de tabelas temporárias.

A motivação por trás do QBE é que um analisador pode converter as ações do usuário em instruções expressas em uma linguagem de manipulação de banco de dados, como SQL . Nos bastidores, é essa instrução que realmente é executada. Um front-end adequadamente abrangente pode minimizar a carga do usuário em lembrar os detalhes mais sutis de SQL, e é mais fácil e mais produtivo para os usuários finais (e até programadores) selecionar tabelas e colunas selecionando-as em vez de digitar seus nomes.

No contexto da recuperação de informações , QBE tem um significado um pouco diferente. O usuário pode enviar um documento ou vários documentos e solicitar que documentos "semelhantes" sejam recuperados de um banco de dados de documentos [ver pesquisa por exemplos múltiplos]. A pesquisa por similaridade é baseada na comparação de vetores de documentos (consulte Modelo de espaço vetorial ).

QBE é um trabalho seminal no desenvolvimento do usuário final , frequentemente citado em artigos de pesquisa como um dos primeiros exemplos deste tópico.

Atualmente, QBE é suportado em vários front ends de banco de dados relacionais, notadamente o Microsoft Access, que implementa "Visual Query by Example", bem como o Microsoft SQL Server Enterprise Manager. Ele também é implementado em vários bancos de dados orientados a objetos (por exemplo, em db4o ).

O QBE é baseado no formalismo lógico denominado consulta de tableau , embora o QBE acrescente algumas extensões a isso, da mesma forma que o SQL é baseado na álgebra relacional .

Exemplo

Um exemplo usando o banco de dados de fornecedores e peças é fornecido aqui para ilustrar como o QBE funciona.

Exemplo simples de QBE
S S # SNAME PROPRIETÁRIO SCITY
P. SX J. DOE ROMA

Como técnica geral

O termo também se refere a uma técnica geral influenciada pelo trabalho de Zloof, em que apenas itens com valores de pesquisa são usados ​​para "filtrar" os resultados. Ele fornece uma maneira para o usuário do software realizar consultas sem ter que conhecer uma linguagem de consulta (como SQL ). O software pode gerar automaticamente as consultas para o usuário (geralmente nos bastidores). aqui estão alguns exemplos:

Exemplo de formulário B :

.....Name: Bob
..Address:
.....City:
....State: TX
..Zipcode:

SQL resultante :

SELECT * FROM Contacts WHERE Name='Bob' AND State='TX';

Observe como os itens em branco não geram termos SQL . Como o "Endereço" está em branco, nenhuma cláusula foi gerada para ele. Por exemplo, formulário C :

.....Name: 
..Address:
.....City: Sampleton
....State: 
..Zipcode: 12345

SQL resultante :

SELECT * FROM Contacts WHERE City='Sampleton' AND Zipcode='12345';

Versões mais avançadas do QBE têm outras opções de operador de comparação, geralmente por meio de um menu suspenso, como "Contém", "Não contém", "Começa com", "Maior que" e assim por diante.

Outra abordagem para comparações de texto é permitir um ou mais caracteres curinga . Por exemplo, se um asterisco for designado como um caractere curinga em um sistema específico, a pesquisa de sobrenomes usando "Rob * " retornaria (corresponderia) a sobrenomes como "Rob", "Robert", "Robertson", " Roberto ", etc.

Veja também

Referências

  1. ^ Zhu, Mingzhu; Wu, Yi-Fang Brook (24/02/2014). Pesquise por vários exemplos . ACM. pp. 667–672. doi : 10.1145 / 2556195.2556206 . ISBN 9781450323512.
  2. ^ "QBE", db4o , Developer works Java library, IBM, 27 de março de 2007

Fontes

links externos

  • Consulta por exemplo para PostgreSQL , fundição Pg.
  • "Consulta por exemplo em Java usando Hibernate", Jboss.
  • "Experiencing OptiqueVQS: a multiparadigma e sistema de consulta visual baseado em ontologia para usuários finais", Optique (PDF).