Задать вопрос
@natan_89

Как создать базу данный SQlite для викторины?

Привет всем.
Вопрос такой, нужно создать базу данных в SQLite для викторины.
Будет вопрос и 4 разных варианта ответа.
Как это реализовать? Спасибо.
  • Вопрос задан
  • 727 просмотров
Подписаться 2 Простой Комментировать
Решения вопроса 2
Самый простой вариант - создать базу с одной таблицей, в которой будет 7 столбцов:
  1. id - номер вопроса;
  2. text - текст вопроса;
  3. answer1 - текст первого ответа;
  4. answer2 - текст второго ответа;
  5. answer3 - текст третьего ответа;
  6. answer4 - текст четвёртого ответа;
  7. right_answer - номер правильного ответа.
Ответ написан
MrSalivan
@MrSalivan
.Net/C# Developer Odessa
Вот запрос на создание таблицы, которую предложил Александр
CREATE TABLE `Questions` (
	`Id`	INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
	`Text`	TEXT NOT NULL UNIQUE,
	`FirstAnswer`	TEXT NOT NULL UNIQUE,
	`SecondAnswer`	TEXT NOT NULL UNIQUE,
	`ThirdAnswer`	TEXT NOT NULL UNIQUE,
	`FourthAnswer`	TEXT NOT NULL UNIQUE,
	`RightAnswer`	INTEGER NOT NULL UNIQUE
);

Но мне такой вариант не очень нравится, я бы сделал все таки две таблицы: вопросы и ответы.
CREATE TABLE `Answers` (
  `Id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, 
  `Text` TEXT NOT NULL UNIQUE, 
  `IdQuestion` TEXT NOT NULL REFERENCES Questions (Id) 
    ON DELETE NO ACTION 
    ON UPDATE CASCADE
);

CREATE TABLE `Questions` (
  `Id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, 
  `Text` TEXT NOT NULL UNIQUE, 
  `IdRightAnswer` INTEGER NOT NULL UNIQUE REFERENCES Answers (Id) 
    ON DELETE CASCADE 
    ON UPDATE CASCADE
);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы