Dotaz příkladem - Query by Example
Dotaz příkladem (QBE) je databáze dotazovací jazyk pro relační databáze. Byl navržen Moshé M. Zloof na IBM Research v polovině 70. let, souběžně s rozvojem SQL. Jedná se o první grafický dotazovací jazyk využívající vizuální tabulky, kde by uživatel zadával příkazy, ukázkové prvky a podmínky. Mnoho grafických rozhraní pro databáze dnes využívá nápady od QBE. Původně omezeno pouze za účelem načítání dat, QBE byl později rozšířen, aby umožnil další operace, jako jsou vkládání, mazání a aktualizace, jakož i vytváření dočasných tabulek.
Motivací QBE je, že a analyzátor může převádět akce uživatele na příkazy vyjádřené v jazyce manipulace s databází, například SQL. V zákulisí se skutečně provádí tento příkaz. Vhodně komplexní front-end může minimalizovat zátěž pro uživatele, aby si pamatoval jemnější podrobnosti o SQL, a pro koncové uživatele (a dokonce i programátory) je snazší a produktivnější vybírat tabulky a sloupce jejich výběrem, než zadáním jejich jména.
V kontextu vyhledávání informací „QBE má poněkud odlišný význam. Uživatel může odeslat dokument nebo několik dokumentů a požádat o načtení „podobných“ dokumentů z databáze dokumentů [viz vyhledávání podle několika příkladů[1]]. Hledání podobnosti je založeno na porovnání vektorů dokumentů (viz Vektorový vesmírný model ).
QBE je klíčová práce v vývoj koncových uživatelů, často uváděný ve výzkumných pracích jako časný příklad tohoto tématu.
V současné době je QBE podporován v několika frontendech relačních databází, zejména v Microsoft Access, který implementuje „Visual Query by Example“, stejně jako Microsoft SQL Server Enterprise Manager. Je také implementován v několika objektově orientované databáze (např. v db4o[2]).
QBE je založeno na tzv. Logickém formalismu tablo dotaz, ačkoli QBE k tomu přidává některá rozšíření, podobně jako je SQL založen na relační algebra.
Příklad
Příklad použití Databáze dodavatelů a dílů zde je uveden pro ilustraci toho, jak QBE funguje.
S | S # | SNAME | MAJITEL | SCITY |
---|---|---|---|---|
P.SX | J. DOE | ŘÍM |
Jako obecná technika
Termín také odkazuje na obecnou techniku ovlivněnou Zloofovou prací, kdy k filtrování výsledků jsou použity pouze položky s hodnotami vyhledávání. Poskytuje uživateli softwaru možnost provádět dotazy, aniž by musel znát jazyk dotazu (například SQL ). Software může automaticky generovat dotazy pro uživatele (obvykle v zákulisí). Zde jsou nějaké příklady:
Příklad formuláře B:
..... Jméno: Bob..Adresa: ..... Město: .... Stát: TX..Zipcode:
Výsledek SQL:
VYBRAT * Z Kontakty KDE název='Bob' A Stát='TX';
Všimněte si, jak se prázdné položky negenerují SQL podmínky. Protože „Adresa“ je prázdná, není pro ni vygenerována žádná klauzule. ForExample Form C:
..... Jméno: .. Adresa: ..... Město: Sampleton .... Stát: .. PSČ: 12345
Výsledek SQL:
VYBRAT * Z Kontakty KDE Město='Sampleton' A PSČ='12345';
Pokročilejší verze QBE mají další možnosti operátoru porovnání, často prostřednictvím rozbalovací nabídky, například „Obsahuje“, „Neobsahuje“, „Začíná na“, „Větší než“ atd.
Dalším přístupem k porovnání textu je umožnit jeden nebo více zástupný znak postavy. Pokud je například v určitém systému hvězdička označena jako zástupný znak, pak hledání příjmení pomocí „Rob*„vrátí (shoduje) příjmení jako„ Rob “,„ Robert “,„ Robertson “,„ Roberto “atd.
Viz také
- CRUD
- Microsoft Query příkladem
- GraphQL QBE pro frontendy JSON.
- QBIC
Reference
- ^ Zhu, Mingzhu; Wu, Yi-Fang Brook (2014-02-24). Hledání podle několika příkladů. ACM. 667–672. doi:10.1145/2556195.2556206. ISBN 9781450323512.
- ^ "QBE", db4o, Developer works Java library, IBM, 27. března 2007
Zdroje
- Zloof, Moshé M (květen 1975), "Dotaz příkladem", NCC (řízení), 44, Anaheim, Kalifornie: AFIPS.
- Ramakrishnan, Raghu; Gehrke, Johannes, "6. QBE" (PDF), Systémy pro správu databází (3. vyd.), Wisc.
- Date, Christopher ‘Chris‘ J. (2004), „8. Relational Calculus“, Úvod do databázových systémůAddison ‐ Wesley Pearson, str. 242–7, ISBN 978-0-321-18956-1.
- Definice Oracle, Tech cíl.
- Zaiane, "5", CC 354 poznámky, Kanada: SFI.
externí odkazy
- Dotaz na příklad pro PostgreSQL, Slévárna Pg.
- "Dotaz na příklad v Javě pomocí Hibernate", Jboss.
- "Experiencing OptiqueVQS: a multi-paradigm and ontology-based visual query system for end users", Optique (PDF).