Lorsqu’on crée une table qui va faire appel à une clé étrangère composite, on obtient un message d’erreur lors de l’ajout de données: foreign key mismatch.
Solution
SQLite browser construit incorrectement la requête de création de la table.
Il faut
- copier la requête de création,
- la corriger
- supprimer la table
- la recréer avec la requête corrigée
Exemple
à la place des instructions sur plusieurs lignes:
FOREIGN KEY("Champ1") REFERENCES "Table1"("Champ1"),
FOREIGN KEY("Champ2") REFERENCES "Table1"("Champ2"),
Il faut mettre sur une seule ligne:
FOREIGN KEY("Champ1", "Champ2") REFERENCES "Table1"("Champ1", "Champ2"),