0
現在の方法(Excelスプレッドシート)が有効であるため、プロダクションフローでデータを収集できるようにSQLを学習し始めました。いずれの列もUNIQUEでないテーブル間のSQLリンク列
SQlite3を使用してデータベースを作成していますが、別のテーブルの列間にリレーションシップを作成しようとしているところに問題があります。例えば
:
CREATE TABLE process1 (
Product1ID INTEGER PRIMARY KEY,
StartDate TEXT,
EndDate TEXT
);
CREATE TABLE process2 (
Product2ID INTEGER PRIMARY KEY,
StartDate TEXT,
EndDate TEXT
);
とすぐに製品がプロセス1が終了したとして、それがプロセス2に入ったので、私はすでにプロセス1(終了日)で見つかった日付であることをプロセス2(開始日)のいずれかの値を制約したかったです。
複数の製品で同じ日付にprocess1(およびprocess2)を開始して終了することができるため、両方の表のDate列にUNIQUE値が含まれていないため、外部キー制約の親キーの要件がわかります。
いずれかの列に一意の値を保持せずに、すべての値が別の表の列に既に存在する必要があるように、表の1列を制約する方法はありますか?
は、process1テーブル内のすべての項目がprocess2テーブルになりますか? – happymacarts
@happymacartsはい彼らは – joeqesi
あなたはテーブルの構造を変更することができます私は何かこれを行う可能性があります:製品ID、p1_start_date、p1_end_date、p2_start_date、p2_end_date、...それは動作しない限りすべて1つのテーブル内のすべて – happymacarts