Hello all,
I have PRAGMA foreign_keys = ON
With:
pysqlite version is 2.4.1
sqlite3 version is 3.6.23.1
And the tables:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
CREATE TABLE tags_product (
id INTEGER PRIMARY KEY,
tag_id INTEGER NOT NULL,
product_id INTEGER NOT NULL,
FOREIGN KEY(tag_id) REFERENCES tags(id),
FOREIGN KEY(tag_id) REFERENCES product_product(id) ON DELETE
CASCADE ON UPDATE CASCADE,
UNIQUE('tag_id', 'product_id')
);
CREATE TABLE tags (
id INTEGER PRIMARY KEY,
tag_name TEXT NOT NULL UNIQUE
);
CREATE TABLE product_product (
id INTEGER PRIMARY KEY,
[etc.]
);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
I have several rows in tags_product linked to a row in parent table
product_product.
When I delete the product_product row, I expect all of the related rows
in tags_product to automatically be deleted.
I find that only one of the rows in tags_product gets deleted.
My application (with PRAGMA foreign_keys = ON) creates all of the rows.
I used the command line sqlite3 (with PRAGMA foreign_keys = ON) to
delete the product_product row.
What's going on?
Mark
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users