Как я могу использовать массивы ссылок в SQLite?
Я внедряю систему для представления школьного расписания в SQL, и я хочу иметь таблицу под названием Student
который включает в себя все классы студента. мне нужно включить ссылки на Class
таблица как атрибуты class1,class2,class3,...,class12
или я могу использовать своего рода массив?
2 ответа
Поскольку вы используете реляционную базу данных, было бы хорошо установить отношения a m:n между таблицей Student и Class. Это будет означать, что у вас будет таблица Student с первичным ключом student_id, таблица Class с первичным ключом class_id и еще одна таблица с именем StudentClass с внешними ключами fk_student_id и fk_class_id, а также некоторые дополнительные свойства (в зависимости от того, чего вы хотите достичь). Это был бы хороший реляционный дизайн.
Вы можете заполнить поле списком, разделенным запятыми, или оставить отдельную таблицу "разрешенных классов" со связанными данными (уникальный идентификационный номер, имя, описание, учитель), а затем использовать внешние ключи и промежуточную таблицу для реализации. отношение многих ко многим ученикам к занятиям.
Поддержка внешних ключей в SQLite в наши дни довольно хорошая, и все функции, которые вам, вероятно, понадобятся, уже есть.