В моем приложении успешно реализована следующая схема. Приложение подключает каналы настольного устройства к каналам устройства ввода-вывода. Таблицы DeskUnits и IOUnits - это просто список модулей Desk / IO и количество каналов в каждом. Например, рабочий стол может быть 4 или 12 канальным.
CREATE TABLE DeskUnits (Name TEXT, NumChannels NUMERIC);
CREATE TABLE IOUnits (Name TEXT, NumChannels NUMERIC);
CREATE TABLE RoutingTable (DeskUnitName TEXT, DeskUnitChannel NUMERIC, IOUnitName TEXT, IOUnitChannel NUMERIC);
Таблица 'RoutingTable' затем соединяет каждый канал DeskUnit с каналом IOUnit. Например, DeskUnit, называемый каналом 1 «Desk1», может маршрутизировать имя канала IOunit «канал IOUnit1» 2 и т. Д.
Пока что я надеюсь, что это довольно просто и понятно. Проблема, однако, в том, что это строго отношения 1 к 1. Любой канал DeskUnit может маршрутизировать только 1 канал IOUnit.
Теперь мне нужно реализовать отношение 1 ко многим. Где любой канал DeskUnit может подключаться к нескольким каналам IOUnit. Я понимаю, что мне, возможно, придется полностью переставить таблицы, но я не уверен, что это лучший способ сделать это.
Я довольно новичок в SQLite и базах данных в целом, поэтому любая помощь будет принята.
Спасибо
Patrick