I'm getting a "foreign key mismatch" error with the following code:
~~~ <create new database> PRAGMA foreign_keys = ON; CREATE TABLE IF NOT EXISTS JobPlans (Name UNIQUE); CREATE TABLE IF NOT EXISTS Tasks (JobPlan_ID INTEGER NOT NULL REFERENCES JobPlans(RowID) ON DELETE CASCADE, UID UNIQUE NOT NULL); INSERT INTO JobPlans(Name) VALUES ('234234'); # Following line generates the error: INSERT INTO Tasks(JobPlan_ID,UID) VALUES (1,'ZZZ'); ~~~ If I explicitly declare an alias for the RowID: CREATE TABLE IF NOT EXISTS JobPlans (RowID INTEGER PRIMARY KEY, Name UNIQUE); I don't get the error. Is it not possible to reference the SQLite internal/default column for the RowID in a foreign key definition? The online docs should be updated to reflect this. _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users