SQLite Ошибка внешнего ключа несоответствие - фондовые ссылки на варианты - PullRequest
0 голосов
/ 01 апреля 2019

Когда я пытаюсь удалить все из таблицы Продукты, я получаю сообщение об ошибке в заголовке SQLite Ошибка 1:

несоответствие внешнего ключа - "Stock" со ссылкой на "Variants"

Это мои определения таблиц

CREATE TABLE Products ( Codart TEXT NOT NULL, Descri TEXT NOT NULL,...
CONSTRAINT PK_Products PRIMARY KEY(Codart) )

CREATE TABLE Variants ( Codart TEXT NOT NULL, Codvar TEXT NOT NULL, 
CONSTRAINT PK_Variants PRIMARY KEY(Codart, Codvar), 
CONSTRAINT FK_Products FOREIGN KEY (Codart) REFERENCES Products(Codart) ON DELETE CASCADE )

CREATE TABLE Stock (Year int not null, Codart text NOT NULL, Codvar text NOT NULL, Qty real NOT NULL, 
CONSTRAINT PK_Stock PRIMARY KEY(`Year`,`Codart`,`Codvar`), 
CONSTRAINT FK_Products FOREIGN KEY (Codart) REFERENCES Products(Codart) ON DELETE CASCADE, 
CONSTRAINT FK_Variants FOREIGN KEY (Codvar) REFERENCES Variants(Codvar) ON DELETE CASCADE )

Вопрос в том, когда я пытаюсь бежать "УДАЛИТЬ ИЗ ПРОДУКТОВ" я получаю ошибку выше

1 Ответ

0 голосов
/ 01 апреля 2019

Вкл. Stock, попробуйте

CONSTRAINT FK_Variants FOREIGN KEY (Codart,Codvar) REFERENCES Variants(Codart,Codvar) ON DELETE CASCADE
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...