Можно ли в одну ячейку SQL записать несколько FOREIGN KEY?
Собираюсь написать приложение на C++ Qt, для ведения проектов на предприятии (отслеживание стадии разработки изделия, комплектность КД, присваивание децимальных номеров и тому подобное). Встал вопрос организации SQLite базы. Дело в том, что не на всех стадиях разработки требуется фуллхаус документов, - где-то ведомость покупных изделий не нужна, где-то утверждающие листы. Куча вопросов. Как отобразить это в базе?
Я придумал такую структуру - три таблицы на типы документов (для КД, для ТД и для ПД)(Спецификация, Маршрутная карта, и т.д.), три таблицы для самих документов (относительный путь, название, исполнитель ...) и одна таблица с стадиями ( название, литера ...). Так вот, как отобразить упомянутый выше факт, что не все документы на всех этапах нужны? А если привязываться к теме вопроса, то могу ли я, указав в таблице "стадии" колонку "необходимые документы", запихнуть в ячейку все айдишники нужных документов? Или одна ячейка - один FOREIGN KEY?
Да, скомканно спросил, вывалил много не по теме вопроса, но это осознанно, так как мой подход, скорее всего, вообще не правелен, тогда может кто подскажет, как лучше это дело спроектировать?
ой всё, как часто вы не завершаете того, что начали? Я слишком уж этим грешил в прошлом, теперь нет. Можно получить более развернутый ответ, почему вы дали именно такой совет? Или это шутка?
Теоретически Вы можете в одно поле запихнуть весь список id записей, как строку, как массив и т.д., но это очень плохой подход. Я так понимаю, что Вам нужна связь многие-ко многим: должна быть таблица, в которой в одной колонке будет id "этапов", а второй соответствующие этим этапам id документов.