0
Почему Sqlite позволяет мне вставлять внешний ключ в таблицу2, который не соответствует первичным ключам в таблице1? Я использую .NET и System.Data.SQLite.dllSqlite внешняя вставка ключа должна завершиться неудачно
Вот мои настройки:
create table [table1] (
[Id] integer primary key NOT NULL
, [col1] nvarchar(100) NULL
);
create table [table2] (
[Id] integer primary key NOT NULL
, [col2] integer NOT NULL
, FOREIGN KEY(col2) REFERENCES table1(Id)
);
INSERT INTO [table1] ([col1]) VALUES ('val1');
INSERT INTO [table2] ([col2]) VALUES ('2');
SQL скрипку: http://sqlfiddle.com/#!7/4fccc/1/0
Похоже на дублирование, хотя я решил его с включением ограничений внешнего ключа в строке соединения следующим образом: «Источник данных =: память:; внешние ключи = истина»; – rlee