2012-01-03 60 views
1

我有兩個數據表具有以下行。如何使用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); 但它給錯誤。 如何實現這一目標?

+0

請提及的問題的錯誤 – PresleyDias 2012-01-03 10:24:50

+1

更改列的數據類型表A爲varchar匹配一個表B,然後將正確的合併.. – VS1 2012-01-03 10:25:30

+0

是'1A '='1'同樣的記錄,所以'ED'是否應該替換'VAT'?合併後TaxID應該是一個int還是一個varchar列? – 2012-01-03 10:34:46

回答

4

在Datatable填充數據後,您無法更改DataColumn的DataType。因此,在填充之前,您應該使用SQL將其轉換爲適當的類型(varchar)。

例如:

SELECT CAST(TaxID as varchar(5))AS TaxID, TaxName FROM TableA