Может ли внешний ключ в одной таблице быть атрибутом неуникального ключа составного первичного ключа второй таблицы? - PullRequest
0 голосов
/ 06 апреля 2020

Здесь table1 :

 CREATE TABLE "table1" (
"date"  TEXT NOT NULL,
"dispenser" TEXT NOT NULL,
"start_reading" REAL NOT NULL,
"end_reading"   REAL,
"fuel_sold" REAL,
"amnt_earned"   REAL,
"profit"    REAL,
PRIMARY KEY("date","dispenser"),
);

Здесь table2 :

CREATE TABLE "discounts" (
"id"    INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,
"date"  TEXT,
"name"  TEXT,
"discount"  REAL,
FOREIGN KEY("date") REFERENCES "daily_reports"("date")
);

Когда я пытаюсь вставить данные в table2 выдает ошибку ограничения внешнего ключа.

Insert into discounts(date,name,discount) values(@date,@name,@amount)

1 Ответ

0 голосов
/ 07 апреля 2020

Нет.

Как следует из названия, «внешний ключ» - это ключ другой таблицы. А ключ по определению уникален для сторонней таблицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...