Översikt

Förfrågan genom exempel, ofta förkortat QBE (Query by Example), är en användarvänlig metod för att skapa databassökningar genom att fylla i exempel eller formulär istället för att skriva ett textbaserat frågespråk. I praktiken får användaren ett visuellt schema eller en mall som representerar tabeller och kolumner i en relationsdatabas, och markerar vilka fält som ska returneras eller vilka villkor som ska gälla.

Hur det fungerar

I ett typiskt QBE-gränssnitt visas tabeller som rader eller rutor där användaren kan klicka, skriva värden eller ange uttryck i kolumnerna. Systemet översätter dessa exempel till en formell fråga via en komponent ofta kallad parser eller generator, som i bakgrunden skapar motsvarande SQL- eller annat databasspråkuttryck och skickar det till databasen. Detta gör att användaren slipper memorera syntax, datatyper och tabellnamn — i stället arbetar hen visuellt med de dataexempel som är relevanta.

Historik och utveckling

QBE utvecklades på IBM under 1970-talet som ett sätt att sänka tröskeln för icke-specialister som behövde hämta data utan att lära sig ett komplext språk. Arbetet skedde inom IBM samtidigt som andra projekt utvecklade det textbaserade språket SQL, vilket ofta nämns som parallell utveckling till SQL. Konceptet fick spridning eftersom det erbjöd en naturlig övergång från papper och formulär till elektroniska databassökningar.

Användningsområden och exempel

QBE används i grafiska frågekonstruktörer i många databashanterare, rapportverktyg och affärssystem där slutanvändare behöver skapa urval utan programmeringskunskaper. Exempel på tillämpningar är enkla rapporter, ad-hoc-frågor i administrativa system, och visuella verktyg i beslutsstöd. I informationssökning förekommer en relaterad betydelse: användaren lämnar in ett dokument eller en exemplarpost och ber om att liknande dokument returneras, en metod kopplad till vektorrumsmodellen och likhetssökning inom informationssökning.

Fördelar och begränsningar

  • Fördelar: Låg inlärningströskel, snabbare urval för tillfälliga användare, minskad felkälla i skrivna frågor och bättre visuell förståelse för datamodellen.
  • Begränsningar: Svårare att uttrycka mycket komplexa frågor eller avancerad optimering, risk för otydliga uttryck som kräver efterbearbetning, och ibland begränsad kontroll över hur frågan körs mot databasen.

Tekniska komponenter och skillnader

Ett QBE-system består vanligtvis av tre delar: ett användargränssnitt som visar tabeller och mallar, en logik som tolkar användarens exempel och bygger en mellanrepresentation, och en generator som skapar och ofta optimerar den slutliga frågan. Många moderna grafiska frågekonstruktörer i verktyg som databasadministrationsprogram eller kalkylbladsintegrationer är direkt inspirerade av QBE-idén — de bevarar principen att användaren arbetar med exempel snarare än syntax. Ett annat viktigt skäl till QBE:s popularitet är produktivitetsvinsten: att klicka på kolumnnamn i ett visuellt schema går ofta betydligt snabbare än att skriva fullständiga tabell- och kolumnreferenser.

För den som vill veta mer om praktiska implementationer finns både akademiska referenser och kommersiella produkter som visar hur QBE kan kombineras med moderna gränssnitt. Läs vidare via resurser och handledningar för visuella frågekonstruktörer för att se konkreta exempel på hur mallar och villkor översätts till SQL-frågor.

Fler källor om frågespråk • Om relationsdatabaser • Historik hos IBM • Utvecklingen av SQL • Tekniken bakom parsern • QBE inom informationssökning