我有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
我该怎么做?
感谢您的评论。
由于
答案 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)