Я начал изучать SQL, чтобы иметь возможность собирать данные о потоке производства, поскольку наш текущий метод (Excel-таблица) переживает его полезность.Столбцы SQL-ссылок между таблицами, где ни один столбец не является UNIQUE
Я использую SQlite3 для создания базы данных, но у меня возникает проблема, когда я пытаюсь создать отношения между столбцами отдельных таблиц, но ни один из столбцов в отношении не сохраняет уникальные значения.
Например:
CREATE TABLE process1 (
Product1ID INTEGER PRIMARY KEY,
StartDate TEXT,
EndDate TEXT
);
CREATE TABLE process2 (
Product2ID INTEGER PRIMARY KEY,
StartDate TEXT,
EndDate TEXT
);
Как только продукт закончил process1, он входит Process2, поэтому я хотел, чтобы ограничить любые значения в Process2 (StartDate) быть даты уже найдены в Process1 (EndDate).
Но несколько продуктов могут запускать и завершать process1 (и process2) в одну и ту же дату, поэтому ни один из столбцов Date в любой таблице не содержит значений UNIQUE, которые, как я понимаю, являются требованием ограничения родительского ключа для внешних ключей.
Есть ли способ ограничить один столбец таблицы таким образом, чтобы все значения уже существовали в столбце другой таблицы без столбца, содержащего уникальные значения?
все элементы в таблице process1 будут заканчиваться в таблице process2? – happymacarts
@ happymacarts Да, они – joeqesi
, если вы можете изменить структуру таблицы, я могу сделать это примерно так: Идентификатор продукта, p1_start_date, p1_end_date, p2_start_date, p2_end_date, ... Все в одной таблице, если это не сработает – happymacarts