Wie entwerfe ich eine flexible MySQL-Tabellenstruktur zur Implementierung der Fragebogenumfragefunktion?
1. Einleitung
Fragebogenumfragen werden in der Datenerhebung und -forschung in der modernen Gesellschaft häufig verwendet. Um uns flexibel an unterschiedliche Fragebogenumfrageanforderungen anpassen zu können, müssen wir eine vernünftige MySQL-Tabellenstruktur entwerfen. In diesem Artikel wird erläutert, wie Sie eine flexible MySQL-Tabellenstruktur zur Implementierung der Fragebogenfunktion entwerfen und spezifische Codebeispiele bereitstellen.
2. Bedarfsanalyse
3. Tabellendesign
Gemäß den oben genannten Anforderungen müssen wir die folgenden Tabellen entwerfen:
CREATE TABLE-Umfragen (
id INT PRIMARY KEY AUTO_INCREMENT,
erstellt_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);
-- Fragentabelle erstellen
CREATE TABLE ( Fragen
id INT PRIMARY KEY AUTO_INCREMENT,
Inhalt TEXT NOT NULL,
Typ TINYINT NOT NULL, -- 1 bedeutet Einzelauswahl, 2 bedeutet Mehrfachauswahl
FOREIGN KEY (survey_id) REFERENCES Surveys(id)
);
--CREATE TABLE-Optionen (
id INT PRIMARY KEY AUTO_INCREMENT,
questions_id INT NOT NULL,
FOREIGN KEY (question_id) REFERENCES questions(id)
);
-- Antworttabelle erstellen
CREATE TABLE-Antworten (
id INT PRIMARY KEY AUTO_INCREMENT,
Survey_id INT NOT NULL,
Option_id INT NOT NULL,
user_id INT NOT NULL,
erstellt_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (survey_id) REFERENZEN Surveys(id),
FOREIGN KEY (question_id) REFERENCES questions(id),
FOREIGN KEY (option_id) REFERENCES options(id)
);
Für die konkrete Umsetzung der Fragebogenumfrage können wir PHP oder eine andere Programmiersprache verwenden um die Seitenanzeige und Datenverarbeitung zu übernehmen. Hier ist ein einfacher Beispielcode:
Erstellen Sie eine Umfrageseite und übermitteln Sie die Antworten des Benutzers über ein Formular.
Erstellen Sie eine PHP-Datei (submit.php) zur Bearbeitung der Formularübermittlung.
// 获取用户提交的答案 $surveyId = $_POST['survey_id']; $answers = $_POST; // 获取所有POST参数 foreach ($answers as $questionId => $optionIds) { if (strpos($questionId, 'question_') !== false) { $questionId = str_replace('question_', '', $questionId); // 保存答案到数据库 foreach ($optionIds as $optionId) { // 将答案插入到answers表中的代码 } } }
Das obige ist der detaillierte Inhalt vonWie entwerfe ich eine flexible MySQL-Tabellenstruktur zur Implementierung der Fragebogenumfragefunktion?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!