Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/55: Рейтинг темы: голосов - 55, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 24.11.2015
Сообщений: 27

Создание теста с использованием MySQL

27.12.2017, 20:46. Показов 11323. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!Необходима помощь в создании теста на языке C#+MySQl.
Суть в следующем:необходимо реализовать тест на языке C#,тест хранится в БД(вопросы+ответы).
Помогите хотя бы начать делать .
Структура БД спроектирована,но не уверен что правильная.
Есть 3 таблицы:
тест,вопрос,ответ.
В таблице тест 2 строки:id,test_name.
В таблице вопрос 3 строки:id,question,parent_test.
В таблице ответ 4 строки:id,answer,parent,correct_answer.
Спасибо огромное кто не пройдёт мимо!
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.12.2017, 20:46
Ответы с готовыми решениями:

Создание теста с использованием ввода ответа в textBox
Необходимо создать тест с тремя видами вопросов: 1) с выбором одного правильного ответа 2) с выбором нескольких правильных ответов 3)...

Разработка теста на языке php с использованием mysql
Ребят, помогите! Нужно написать тест для локальной сети на php с использованием mysql, так что бы был администратор который может вносить...

Создание теста c использованием JS/VBS
Есть код теста, алгоритм написан на JS. Он полностью удовлетворяет требованием за исключением того что результат нужно записать в *.txt....

15
10 / 10 / 7
Регистрация: 27.12.2017
Сообщений: 72
27.12.2017, 22:33
Вопрос в чем заключается? Помочь спроектировать БД, подключение, отправка, выборка данных?
0
0 / 0 / 0
Регистрация: 24.11.2015
Сообщений: 27
27.12.2017, 22:52  [ТС]
Было бы отлично всё,кроме спроектировать бд.
Буду очень благодарен!
Надо на диплом,а препод по C# был кароч так себе,ну понимаете..
Поэтому туго с этим,а в нете много примеров тестов,без бд.
0
10 / 10 / 7
Регистрация: 27.12.2017
Сообщений: 72
27.12.2017, 23:15
Если БД создана, то подключайся к ней. Скачиваешь MySQLConnector. Подключаешь ссылку на него, прописываешь соединение. А там уже делаешь с базой то, что тебе нужно. Выборка вопросов, загрузка ответов и т.д.

C#
1
2
3
4
5
6
7
....
....
using MySql.Data.MySqlClient; //Подключение коннектора
....
....
//Строка соединения с БД
const string connect = "datasource=Ресурс_на_котором БД; port=3306; username=имя_юзера;password=пасс_юзера";
1
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18286 / 14209 / 5368
Регистрация: 17.03.2014
Сообщений: 28,888
Записей в блоге: 1
27.12.2017, 23:37
andei12, советую сразу подумать как ты это будешь демонстрировать во время защиты. MySQL требует установки сервера. То нужен компьютер где это можно будет сделать или использовать хостинг в интернете (ненадежно и медленно по сравнению с локальной сетью). Можно сразу подумать о возможности использования разных БД. В первую очередь встраиваемых (которые не требуют установки) вроде SQLite. Это не так сложно, но сделает работу более интересной.

Цитата Сообщение от andei12 Посмотреть сообщение
Надо на диплом
Слабая тема для диплома, по моему. Если только не планируется что-то еще кроме настольного приложения и БД. Например, мобильное или веб-приложение использующее ту же БД. Или может чат-бот.
0
0 / 0 / 0
Регистрация: 24.11.2015
Сообщений: 27
28.12.2017, 00:11  [ТС]
Это часть диплома.
Вообще я планировал делать через phpmyadmin)
У меня возникает вопрос как выбирать с помощью SQL запросов вопрос и соответствующие к нему ответы.
Всем спасибо за активность)
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18286 / 14209 / 5368
Регистрация: 17.03.2014
Сообщений: 28,888
Записей в блоге: 1
28.12.2017, 00:20
Цитата Сообщение от andei12 Посмотреть сообщение
Вообще я планировал делать через phpmyadmin
Делать что?

Цитата Сообщение от andei12 Посмотреть сообщение
У меня возникает вопрос как выбирать с помощью SQL запросов вопрос и соответствующие к нему ответы.
Как насчет самого простого варианта для начала?
SQL
1
2
SELECT question FROM вопрос WHERE id=123
SELECT id,answer,correct_answer FROM ответ WHERE parent=123
1
0 / 0 / 0
Регистрация: 24.11.2015
Сообщений: 27
28.12.2017, 00:40  [ТС]
MySql база будет на OpenServer.
Получается через этот запрос я вывожу вопрос и к нему ответы,а как дальше проверять соответствие как ответил пользователь и правильным ответом?
спасибо за помощь
0
10 / 10 / 7
Регистрация: 27.12.2017
Сообщений: 72
28.12.2017, 01:21
Выборка вопроса из БД
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
const string connect = "datasource=127.0.0.1; port=3306; username=root;password=";
Private void Data()
        {
            // Объект для подключения к БД
            MySqlConnection conn = new MySqlConnection(connect);
            // Соединение с БД
            conn.Open();
            // Запрос
            string sql = @"SELECT question  FROM bd_question WHERE id = ...";
            // объект для выполнения SQL-запроса
            MySqlCommand command = new MySqlCommand(sql, conn);
            // Выполняем запрос и получаем ответ
            string name = command.ExecuteScalar().ToString();
            // Выводим вопрос в консоль
            Console.WriteLine(name);
            // закрываем соединение с БД
            conn.Close();
        }
1
0 / 0 / 0
Регистрация: 24.11.2015
Сообщений: 27
28.12.2017, 01:26  [ТС]
А если делать через формы,а не через консоль,логика такая же?
0
10 / 10 / 7
Регистрация: 27.12.2017
Сообщений: 72
28.12.2017, 01:34
Лучший ответ Сообщение было отмечено andei12 как решение

Решение

Цитата Сообщение от andei12 Посмотреть сообщение
А если делать через формы,а не через консоль,логика такая же?
Абсолютно. Просто выводить вопрос куда нужно, вместо консоли. И там же варианты ответов,если нужно. Потом сохраняешь в переменную ответ юзера и сравниваешь с правильным ответом из базы.
1
0 / 0 / 0
Регистрация: 24.11.2015
Сообщений: 27
28.12.2017, 01:41  [ТС]
Спасибо огромное.
И вообще спасибо zer0days и OwenGlendower что не проигнорили.
Буду пробовать делать,если что-то не будет получатся,надеюсь на Вашу помощь.
0
0 / 0 / 0
Регистрация: 24.11.2015
Сообщений: 27
29.12.2017, 19:42  [ТС]
Добрый вечер,код,который Вы скидывали работает.
Но получается так,что если в БД занесём новый вопрос или тест,то получается надо залазить в код и менять запрос.
Есть ли возможность обойти как-нибудь эту ситуацию?
Буду благодарен за помощь!
0
10 / 10 / 7
Регистрация: 27.12.2017
Сообщений: 72
29.12.2017, 19:47
andei12,
Никто не мешает нам в этой строке
C#
1
string sql = @"SELECT question  FROM bd_question WHERE id = ...";
Передавать переменную 'название_теста' и переменную 'вопрос'.
0
0 / 0 / 0
Регистрация: 24.11.2015
Сообщений: 27
29.12.2017, 23:41  [ТС]
А если можно,пример какой-нибудь.
Теоретически я немного понял,но практически,к сожалению нет.
0
10 / 10 / 7
Регистрация: 27.12.2017
Сообщений: 72
30.12.2017, 11:42
C#
1
2
3
int num = 10;
string question = "myquestion";
string sql = @"SELECT {question} FROM mydb.questions WHERE id = {num}";
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
30.12.2017, 11:42
Помогаю со студенческими работами здесь

Создание теста Php+Mysql
Всем доброе время суток. Не могу реализовать задачу. Есть таблица с вопросоми и вариантами ответов (правильного ответа нету, у каждого...

Создание теста с использованием нескольких форм
Хочу создать тест используя несколько форм помогите найти ошибку :)

Создание теста на Delphi с использованием данных из MS Access
передо мной задача Разработать программу тестирования по одному из разделов курса «Прикладное программирование», в которой выбор...

Написание теста Кагана / теста Мюнстерберга с использованием БД
Подскажите, пожалуйста, как написать тест Кагана, Мюнстерберга используя базы данных!!! ^_^

Создание программы-теста(оценивание знаний) и вывод теста в форму, с подсчетом оценки(балл за правильный ответ)
Здравствуйте, уважаемые форумчане. У меня назрел еще один вопрос: -Есть задание написать приложение, которое осуществляет...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru