Bonjour,

Mon problème est le suivant, j'ai un dataset représentant une table stockée sous MySql et j'aimerai pouvoir ajouter une colonne à cette table : j'utilise donc la méthode suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Columns.Add(new DataColumn("test",typeof(int)));
La colonne est bien ajoutée au DataSet mais ensuite j'aimerai bien que cette "alter table" soit répercuté dans ma BDD afin de sauvegader la colonne. Voici l'extrait de code que j'utilise :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
this.cmd = new MySqlCommand("SELECT * FROM " + this.table, this.msconnexion);
                this.adapter = new MySqlDataAdapter(this.cmd);
                this.builder = new MySqlCommandBuilder(this.adapter);
                this.ds = new DataSet();
                this.adapter.Fill(this.ds, this.table);
this.ds.Tables[this.table].Columns.Add(new DataColumn("test",typeof(int)));
 
this.adapter.InsertCommand = this.builder.GetInsertCommand();
                this.adapter.Update(this.ds.Tables[this.table]);
 
                this.adapter.DeleteCommand = this.builder.GetDeleteCommand();
                this.adapter.Update(this.ds.Tables[this.table]);
 
                this.adapter.UpdateCommand = this.builder.GetUpdateCommand();
                this.adapter.Update(this.ds.Tables[this.table]);
Je pense qu'il faudrait une méthode du type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
this.adapter.AlterCommand = this.builder.GetAlterCommand();
Mais ça n'existe pas. Si quelqu'un a la réponse, merci de me dépanner.

bonne journée.