Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Boleh Mengubah Jenis Data Lajur Jadual Data Selepas Data Diisi?

Bagaimanakah Saya Boleh Mengubah Jenis Data Lajur Jadual Data Selepas Data Diisi?

Patricia Arquette
Lepaskan: 2025-01-14 12:17:44
asal
1017 orang telah melayarinya

How Can I Change a DataTable Column's DataType After Data Has Been Populated?

Tukar jenis data DataColumn dalam DataTable

Apabila bekerja dengan data dalam Jadual Data, anda mungkin menghadapi situasi di mana anda perlu mengubah suai jenis data lajur tertentu untuk menampung format data yang berbeza.

Pertimbangkan senario berikut: Jadual Data diisi dengan data daripada jadual SQL dan lajur pertama, yang asalnya ditakrifkan sebagai jenis data 'Double', perlu ditukar kepada 'Int32'.

Coretan kod:

<code class="language-csharp">DataTable dt = new DataTable();
using (SqlConnection conn = new SqlConnection(...))
{
    using (SqlDataAdapter adapter = new SqlDataAdapter("SELECT * FROM " + tableName, conn))
    {
        adapter.FillSchema(dt, SchemaType.Source);
        adapter.Fill(dt);
    }
}</code>
Salin selepas log masuk

Penyelesaian:

Secara lalai, DataTable tidak membenarkan mengubah suai jenis data lajur selepas mengisinya dengan data. Walau bagaimanapun, terdapat penyelesaian untuk mengklonkan Jadual Data dan mengubah suai jenis data lajur. Lajur yang diubah suai kemudiannya boleh diisi semula dengan data daripada jadual asal.

Coretan kod:

<code class="language-csharp">// 创建一个具有所需列数据类型的克隆 DataTable
DataTable dtCloned = dt.Clone();
dtCloned.Columns[0].DataType = typeof(Int32);

// 使用原始表中的数据填充克隆表
foreach (DataRow row in dt.Rows)
{
    dtCloned.ImportRow(row);
}</code>
Salin selepas log masuk

Dengan pendekatan ini, anda boleh menukar jenis data lajur dengan berkesan walaupun selepas mengisi Jadual Data dengan data.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengubah Jenis Data Lajur Jadual Data Selepas Data Diisi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan