170 похожих чатов

Всем привет, подскажите плз какую базу лучше выбрать для следующего

основного функционала. Преподаватель может создавать страницу в которой содержаться задания разных типов, текста/ответы заданий могут быть абсолютно разными на усмотрением преподавателя. Задания координально могут отличаться. Сразу взял SQL базу, но что-то сижу и не пойму как сделать общую структуру под настолько разные задания и вот подумал, может стоит MongoDB для подобного юзать, что думаете?

7 ответов

15 просмотров

постгресс с жсонби - лучшее из обоих миров

Надо сначала определить ограничения на эти задания, а дальше будет понятно, как из этого сделать схему данных. Вполне возможно, что можно будет даже без JSON обойтись

Артем-Ильченко Автор вопроса

дело в том что под разные типы заданий разные ограничения, к примеру. 1-е задание: Есть вопросы, есть заранее заготовленные ответы, нужно выбрать правильный ответ с помощью чекбокса. 2-й: имеется текст, есть пропуски в нём, нужно ввести вручную правильные слова, при этом есть заранее определённый пул ответов под каждый пропуск. И тут схемы координально разные или я не прав?

Любую

> И тут схемы координально разные или я не прав? Если они разные, это не значит, что нельзя использовать РБД. Если есть таблицы, это не значит, что задание должно быть обязательно полностью просто одной строчкой в таблице. Например, можно просто завести JSON поле с "динамическими параметрами" задания, если они не будут нужны на уровне запросов. А можно сделать отдельно таблицу с типами заданий, отдельно таблицу с разными значениями разных параметров заданий, а в таблице заданий просто указывать его тип. А вот как сделать удобно зависит уже от того, что такое задание, какие в нём могут быть данные (у любого типа), что с ним будут делать.

Артем-Ильченко Автор вопроса

хорошо, спасибо большое, у меня просто почему-то мозг отверг идею с json в РБД и пытался как-то таблицами по строчке всё попробовать решить

Можно и без JSON. Смотря какие требования. Например, если каждый тип задания, его параметры и всё прочее тоже хранится в БД, то проще генерировать для них интерфейс и добавлять новые типы заданий

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

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Карта сайта