Exekuter
Messages postés5Date d'inscriptionsamedi 18 février 2006StatutMembreDernière intervention27 décembre 2007
-
21 déc. 2007 à 15:42
Exekuter
Messages postés5Date d'inscriptionsamedi 18 février 2006StatutMembreDernière intervention27 décembre 2007
-
27 déc. 2007 à 11:16
Bonjour à tous,
Après avoir recherché vainement sur le net, je n'ai pas trouvé de solution à mon problème (solution probablement très simple).
Brève description de mon application : cela consiste à un export de tables Access vers une base MySQL. Rien de très compliqué en soi. Pour effectuer cet export, j'utilise un DataSet pour récupérer mes données Access, et je me sert de celui-ci pour injecter les données dans la table (vide) MySQL correspondante.
Je bloque au niveau de la mise à jour de la table MySQL. J'utilise un MySqlCommandBuilder (pour générer les UpdateCommand, InsertCommand et DeleteCommand) puis un DataAdapter.update pour mettre à jour ma table.
Mon problème est que lors de la création du MySqlCommandBuilder, celui-ci ne génère pas automatiquement les command de MàJ, et je ne comprends pas pourquoi. Les 3 command restent à null...
Mon code en question :
public void MiseAJourTable(DataSet ds, String nomTableMySql)
{
try
{
//Création d'un objet MySqlCommand pour être utilisé dans le MySqlDataAdapter
CreerCommand("SELECT * FROM " + nomTableMySql);
MySqlDataAdapter da = new MySqlDataAdapter(this.command);
MySqlCommandBuilder cb = new MySqlCommandBuilder(da);
//Après cette ligne, UpdateCommand, InsertCommand et DeleteCommand sont tous à 'null'...
Exekuter
Messages postés5Date d'inscriptionsamedi 18 février 2006StatutMembreDernière intervention27 décembre 2007 27 déc. 2007 à 11:16
Salut,
Ceci en ajoutant un DataTableMapping (que j'avais oublié) pour faire la correspondance entre les colonnes sources et destinations, tout marche parfaitement. Merci !
Exekuter
Messages postés5Date d'inscriptionsamedi 18 février 2006StatutMembreDernière intervention27 décembre 2007 26 déc. 2007 à 10:42
Hum, j'avais mal compris l'histoire de mettre les commandes à la main, au temps pour moi...
Les commandes sensées être générées par le CommandBuilder ont une forme particulière (avec paramètres, etc.) ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 201137 26 déc. 2007 à 12:00
Salut
Pas de forme particuliere c'est du SQL
La seule grosse difference c'est que le command builder genere des ordres SQL pessimistes
c'est a dire qu'ils sont sur tous les champs
cad where cle=cle and champ1 = val1 and ....
et non que sur la clé priamaire