Bonjour,

j'ai un dataset que j'insert en base de donnée MySql à l'aide d'un MySqlDataAdapter, jusque la aucun problème.

Mais je voudrais récupérer les warning Mysql dans mon code et la je ne trouve pas ou ils peuvent etre stockés.

voila des exemple de mon code :
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
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
public void dt_bd(DataTable dt)
{
    MySqlDataAdapter DA = new MySqlDataAdapter();
    String sReq = "INSERT INTO `" + dt.TableName + "` (";
    foreach (DataColumn dc in dt.Columns)
    {
        sReq += " `" + dc.ColumnName.Replace("-", "") + "`,";
    }
    sReq = sReq.Substring(0, sReq.Length - 1) + ") VALUES (";
    foreach (DataColumn dc in dt.Columns)
    {
        sReq += " ?" + dc.ColumnName.Replace("-", "") + ",";
    }
    sReq = sReq.Substring(0, sReq.Length - 1) + ")";
    MySqlCommand CMD = new MySqlCommand(sReq,this._cnx);
    foreach (DataColumn dc in dt.Columns)
    {
        switch (dc.DataType.FullName)
        {
            case "System.Int32":
                CMD.Parameters.Add("?" + dc.ColumnName.Replace("-", ""), MySqlDbType.Int32, 10, dc.ColumnName);
 
                break;
            case "System.String":
                CMD.Parameters.Add("?" + dc.ColumnName.Replace("-", ""), MySqlDbType.VarChar, 100, dc.ColumnName);
                break;
        }
    }
 
    DA.InsertCommand = CMD;
    DA.InsertCommand.UpdatedRowSource = UpdateRowSource.None;
    DA.UpdateBatchSize = 500;
    DA.RowUpdated +=new MySqlRowUpdatedEventHandler(DA_RowUpdated);
    DA.Update(dt);
    DA.Dispose();
 
}
 
private void DA_RowUpdated(object sender, MySqlRowUpdatedEventArgs e)
{
    if (e.Errors != null)
    {
    }
}
et je voudrais récupérer ce genre de message "Data truncated for column 'Message' at row 1"

Merci de votre aide par avance.