如何使用C#.Net更改已有数据的DataTable的列数据类型?
问题描述:
我有两个数据表具有以下行。如何使用C#.Net更改已有数据的DataTable的列数据类型?
表A:
TaxID TaxName
------ --------
1 VAT
2 Sales Tax
表B:
TaxID TaxName
----- --------
1A ED
2A Discount
在表A中:该列的数据类型TaxID是字符串:用于列TaxID是INT 在表B中的数据类型。
现在我想合并这两个表。 我试过像这样:
TableA.Merge(TableB); 但它给错误。 如何实现这一目标?
答
在Datatable填充数据后,您无法更改DataColumn的DataType。因此,在填充之前,您应该使用SQL将其转换为适当的类型(varchar
)。
例如:
SELECT CAST(TaxID as varchar(5))AS TaxID, TaxName FROM TableA
请提及的问题的错误 – PresleyDias 2012-01-03 10:24:50
更改列的数据类型表A为varchar匹配一个表B,然后将正确的合并.. – VS1 2012-01-03 10:25:30
是'1A '='1'同样的记录,所以'ED'是否应该替换'VAT'?合并后TaxID应该是一个int还是一个varchar列? – 2012-01-03 10:34:46