使用Data从DataTable中删除DataColumn

时间:2015-03-19 14:46:18

标签: c# .net datatable datacolumn

我有Datatable with Data。我打电话给我的postgres数据库并获取DataTable。

// get the new data from postgres
   var dataTable = pg.GetDataTable("SELECT * FROM " + '"'+table+'"');

现在我需要删除特定的列。假设有5列数据。

ID     |   Name   | Address | Mobile | Home
_______________________________________________
    1  |  A       |AAA      | 123    | 345
    2  |  B       |BBB      | 234    | 456
    3  |  C       |CCC      | 345    | 567

所以我需要删除“Home”DataColumn并重新创建此DataTable,如下所示

  ID   |   Name   | Address | Mobile 
____________________________________
    1  |  A       |AAA      | 123    
    2  |  B       |BBB      | 234    
    3  |  C       |CCC      | 345    

我该怎么做?

感谢您的评论。

由于

3 个答案:

答案 0 :(得分:1)

您只需使用方法DataTable.Columns.Remove(string name)

dataTable.Columns.Remove("Home");

然后表格不再包含此列和所有行'此列中的数据将被丢弃。但是,首先省略此列并列出所需的列:

var dataTable = pg.GetDataTable("SELECT ID, Name, Address, Mobile FROM " + '"'+ table +'"');

答案 1 :(得分:1)

只需明确指定所需的列,而不是选择不需要的列并在之后删除它们:

SELECT "Id", "Name", "Address", "Mobile"

使用SELECT *是不礼貌的,因为它使您与数据库的合同不稳定 - 如果列配置发生变化,您将得到不可预测的结果。

答案 2 :(得分:-1)

考虑使用 dataTable.Columns.Remove("ColumnName") 要么 dataTable.Columns.RemoveAt(ColumnNumber)