Bonjour,
Je développe actuellement un application C# & WPF sous Visual Studio 2010 associée à une BDD SQLite.
Je dois importer des données d'un fichier csv dans une table.
format du csv :
NB_LIGNE ID_A QUAN UNIT REPERE DES REF TYPE

EDIT : La colonne NB_LIGNE a une seule valeur dans tous le document

Lors de la création de la table j'ajoute une colonne ID comme clef primaire et avec AUTOINCREMENT.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
CREATE TABLE IF NOT EXISTS main.BOM (ID INTEGER PRIMARY KEY NOT NULL, NB_LIGNE, ID_A, QUAN, UNIT, REPERE, DES, REF, TYPE);
Pour l'insertion je commence par ouvrir le csv et après avoir découpé la ligne j'insère les éléments découpés. Le problème est qu'après la première insertion une exception est levée comme quoi un item avec la même clef a déjà été ajouté. j'ai donc fais quelques essais d'insertion différentes :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
insert into BOM values (null, '" + ligneSplit[0] + "', '" + ligneSplit[1] + "', '" + ligneSplit[2] + "', '" + ligneSplit[3] + "', '" + ligneSplit[4] + "', '" + ligneSplit[5] + "', '" + ligneSplit[6] + "', '" + ligneSplit[7] + "');
j'ai aussi essayé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
insert into BOM values ('" + ligneSplit[0] + "', '" + ligneSplit[1] + "', '" + ligneSplit[2] + "', '" + ligneSplit[3] + "', '" + ligneSplit[4] + "', '" + ligneSplit[5] + "', '" + ligneSplit[6] + "', '" + ligneSplit[7] + "');
Code : Sélectionner tout - Visualiser dans une fenêtre à part
insert into BOM (ID, NB_LIGNE, ID_A, QUAN, UNIT, REPERE, DES, REF, TYPE) values ('" + ligneSplit[0] + "', '" + ligneSplit[1] + "', '" + ligneSplit[2] + "', '" + ligneSplit[3] + "', '" + ligneSplit[4] + "', '" + ligneSplit[5] + "', '" + ligneSplit[6] + "', '" + ligneSplit[7] + "');
mais rien ne fonctionnait. J'ai donc essayé de faire mon ID avec une variable mais le problème reste inchangé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
insert into BOM values ("+nbElemBOM+" ,'" + ligneSplit[0] + "', '" + ligneSplit[1] + "', '" + ligneSplit[2] + "', '" + ligneSplit[3] + "', '" + ligneSplit[4] + "', '" + ligneSplit[5] + "', '" + ligneSplit[6] + "', '" + ligneSplit[7] + "');
bref je commence a être en panne d'idée, Si quelqu'un pouvais m'aider sur ce problème, merci


EDIT : J'ai essayé en console avec un exécutable sqlite, la technique d'insertion avec null fonctionne parfaitement


EDIT 2 FIN : Problème résolu mon fichier de paramétrage de la table ne contenait pas de champs ID. je marque la discussion comme résolue