Lors du traitement des données en programmation, vous devrez peut-être manipuler les types de données des colonnes du DataTable. Cet article explique comment modifier le type de données d'une DataColumn, en particulier de Double à Int32.
Considérez l'exemple suivant dans lequel un DataTable est rempli avec les données d'une requête de base de données :
<code>DataTable Table = new DataTable(); SqlConnection = new System.Data.SqlClient.SqlConnection("Data Source=" + ServerName + ";Initial Catalog=" + DatabaseName + ";Integrated Security=SSPI; Connect Timeout=120"); SqlDataAdapter adapter = new SqlDataAdapter("Select * from " + TableName, Connection); adapter.FillSchema(Table, SchemaType.Source); adapter.Fill(Table); DataColumn column = DataTable.Columns[0];</code>
Une fois les données chargées dans le DataTable, le DataType de la première colonne column
est Double. Le but est de changer ce type de données en Int32.
Cependant, il est important de noter qu'une fois le DataTable rempli de données, vous ne pouvez pas modifier directement le DataType de DataColumn. Les modifications doivent être apportées par d'autres méthodes, comme suit :
Solution :
Une façon d'obtenir la conversion de type de données souhaitée consiste à cloner un DataTable existant et à modifier le type de données dans la table clonée. Cela peut être fait en suivant les étapes suivantes :
<code>DataTable dtCloned = dt.Clone(); dtCloned.Columns[0].DataType = typeof(Int32); foreach (DataRow row in dt.Rows) { dtCloned.ImportRow(row); }</code>
Dans ce code, la variable dtCloned
représente un DataTable cloné avec le type de données de la première colonne modifié. Les données du DataTable d'origine sont ensuite importées dans la table clonée, garantissant ainsi que les valeurs sont préservées dans le processus. Cette méthode permet de modifier le type de données de DataColumn tout en conservant l'intégrité des données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!