Umfragen und Multiple-Choice-Tests - Teil 1

Anforderungen an die Datenbank

Generell sind zwei Möglichkeiten denkbar, wie solche Umfragen erzeugt werden können.

  • Sie erstellen eine Tabelle mit der Frage und eine weitere mit den möglichen Antworten zur Frage. Diese Tabellen werden dann über eine 1:n-Beziehung miteinander verknüpft.

  • Sie legen eine maximale Anzahl Antworten für eine Frage fest. In diesem Fall genügt eine Tabelle für Fragen und Antworten.

Beide Möglichkeiten haben ihre Vor- und Nachteile. Im ersten Fall können Sie sehr variable Umfragen erstellen, weil Sie eben sowohl nur 2 als auch 20 mögliche Antworten zulassen können. Darüber hinaus wäre es möglich, auch mehrere richtige Antworten zu erlauben, indem Sie ein boolesches Feld für jede Antwort definieren, in dem Sie angeben können, ob dies eine richtige Antwort ist. Die erste Möglichkeit ist vor allem dann interessant, wenn es nur eine geringe Anzahl Antwortmöglichkeiten gibt und sie deren maximale Anzahl kennen. Wissen Sie beispielsweise, dass maximal 10 verschiedene Antworten möglich sind, würden Sie die Frage und 10 Antwortfelder einfach ein einer Tabelle speichern. Unpraktikabel ist dieses Vorgehen aber, wenn Sie mehr als eine mögliche Antwort definierten möchten. Dann müssten Sie für jedes Antwortfeld noch ein zusätzliches boolesches Feld definieren. Bei nur einer möglichen Antwort ist das jedoch kein Problem. Sie definieren dazu einfach ein zusätzliches Feld in der Tabelle, indem Sie die Nummer oder den Text der richtigen Antwort speichern.

Für Tests müssen Sie natürlich außerdem die Antworten des Benutzers speichern. Auch das ist abhängig von den Anforderungen. Falls mehrere Antworten pro Frage gewählt werden können, müssten Sie entweder in der Tabelle mit den Ergebnissen für jede mögliche Antwort ein Feld vorsehen oder, wenn Sie die maximale Zahl Antworten nicht kennen, für jede Antwort einen Datensatz erstellen.