C'était pas une erreur dans mon code, mais de "concepetion", en effet j'ai trouvé réponse à mes problèmes : on ne peut pas utiliser une requête contenant une jointure dans le cadre de l'utilisation des commandes automatiques d'un commandbuilder...
Que donne le Debug ? Quelle ligne de code semble générer l'exception ? Est-il possible de cibler davantage l'exception levée avec les objets exceptions propres à SQL (try catch) ? Tous les objets et valeurs sont-ils valides ? Y a-t-il des options à valider du coté server ?
thierry la fronde
Vous n’avez pas trouvé la réponse que vous recherchez ?
Alors y a un try mais je l'ai effacer pour le message ^^ et don ce try est autour de la ligne qui pose problème, c'est à dire autour de da_lignes.InsertCommand = cmdbuild.GetInsertCommand()
New_ligne est normalement nikel (c un datarow, qui est beien rempli, car j'ai réparer les bugs à ce niveau déja). Et da_lignes est un dataadapter.
Ta structure de la base est elle correcte.
Je veux dire, ton ordre insert est-il réalisable, c'est à dire travaille sur une seule table avec une clé primaire.
Regarede de ce coté la.
Pour tester, prend ta table dans l'explorateur de serveur et créer toi un dataset
ou un dataadapter (l'un des deux créer une sqlcommand builder)
et regarde si il y a pas de warning
Solution :
Soit tu corriges ta base ajout PK
ou ta methode travaille sur un seul cas
Soit tu definis l'insert command de ta dataadapter à la main avec le bon sql qui te faut.
Bon ben en effet ma requete sql laissait largement à désirer
Alors j'ai corrigé ça
Mais ça ne marche toujours pas.
Par contre j'ai trouvé pourquoi ça bug malgré le try... Car j'ai fait un catch sur une SqlClient.SqlException
alors que mon erreur est une InvalidOperationException
ALors cela vous dit quelque chose en plus??
J'en ai parlé à d'autres, mais personne n'a vu encore cette erreur
Bref c'est cro dur....
Surtout que juste au dessus dans mon code je fait exactement la même chose sur une table qui ressemble (voui en fait la base est très mal faite, mais c'est normale, c'est pas moi qui l'ai faite lol) Et là ca marche nikel..