ホームページ > バックエンド開発 > C++ > DataTable で DataColumn のデータ型を Double から Int32 に変更するにはどうすればよいですか?

DataTable で DataColumn のデータ型を Double から Int32 に変更するにはどうすればよいですか?

Susan Sarandon
リリース: 2025-01-14 11:51:16
オリジナル
374 人が閲覧しました

How to Change a DataColumn's Data Type from Double to Int32 in a DataTable?

DataTable の DataColumn データ型を変換します

プログラミングでデータを処理する場合、DataTable 内の列のデータ型を操作する必要がある場合があります。この記事では、DataColumn のデータ型を変更する方法、特に Double から Int32 に変更する方法について説明します。

DataTable にデータベース クエリからのデータが設定される次の例を考えてみましょう:

<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>
ログイン後にコピー

データが DataTable にロードされた後、最初の列 column の DataType は Double になります。目標は、このデータ型を Int32 に変更することです。

ただし、DataTable にデータを設定した後は、DataColumn の DataType を直接変更できないことに注意することが重要です。変更は次のように他の方法で行う必要があります:

解決策:

目的のデータ型変換を実現する 1 つの方法は、既存の DataTable を複製し、複製されたテーブルのデータ型を変更することです。これは次の手順で実行できます:

<code>DataTable dtCloned = dt.Clone();
dtCloned.Columns[0].DataType = typeof(Int32);
foreach (DataRow row in dt.Rows) 
{
    dtCloned.ImportRow(row);
}</code>
ログイン後にコピー

このコードでは、dtCloned 変数は、最初の列のデータ型が変更された複製された DataTable を表します。元の DataTable のデータはクローン テーブルにインポートされ、プロセス内で値が確実に保持されます。このメソッドを使用すると、データの整合性を維持しながら DataColumn のデータ型を変更できます。

以上がDataTable で DataColumn のデータ型を Double から Int32 に変更するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート