我有一个名为 scanHistory 的表,其中包含 scanID 和 HostID 作为外键,它们实际上是它们各自表的主键。我想在 SQLite 中编写一个插入查询,以避免将相同的 scanID 值插入到其各自的 HostID 中,这意味着没有两个相同的主机可以具有相同的 scanID 类似:
ScanID - 100 HostID - 1
ScanID - 100 HostID - 2
ScanID - 200 HostID - 1
我试过这个查询
INSERT INTO scanHistory (NULL,4000,1) Select 1 WHERE NOT EXISTS (SELECT 1 from scanHistory);
但它给了我错误说明
Error: near "NULL": Syntax Error
我做错了什么?桌子看起来像这样
CREATE TABLE scanHistory(
ScanHistoryID INTEGER PRIMARY KEY AUTOINCREMENT,
HostID INTEGER REFERENCES host(HostID),
ScanID INTEGER REFERENCES scan(ScanID));