SQLite
Enabling foreign key constraints
Foreign key constraints are not enabled by default - it is very permissive. You must manually turn them on, as part of the connection process:
connection = sqlite3.connect("my_database.db")
connection.execute("PRAGMA foreign_keys = ON")
INSERT OR IGNORE INTO
If table has a UNIQUE
constraint on a field, insert if it is unique otherwise skip without throwing a constraint error.
INSERT OR IGNORE INTO table_name (value) VALUES (:value)