使用数据从 DataTable 中删除 DataColumn
Remove DataColumn from 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
我该怎么做?
感谢您的评论。
谢谢
你只需要使用方法 DataTable.Columns.Remove(string name)
:
dataTable.Columns.Remove("Home");
然后 table 不再包含此列,并且此列中的所有行的数据都将被丢弃。但是,首先省略此列并列出所需的列:
var dataTable = pg.GetDataTable("SELECT ID, Name, Address, Mobile FROM " + '"'+ table +'"');
只需明确指定您需要的列,而不是选择不需要的列然后再删除它们:
SELECT "Id", "Name", "Address", "Mobile"
使用 SELECT *
是不礼貌的,因为它会使您与数据库的合同不稳定 - 如果列配置更改,您将得到不可预知的结果。
考虑使用
dataTable.Columns.Remove("ColumnName")
要么
dataTable.Columns.RemoveAt(ColumnNumber)
我有带数据的数据表。我调用了我的 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
我该怎么做?
感谢您的评论。
谢谢
你只需要使用方法 DataTable.Columns.Remove(string name)
:
dataTable.Columns.Remove("Home");
然后 table 不再包含此列,并且此列中的所有行的数据都将被丢弃。但是,首先省略此列并列出所需的列:
var dataTable = pg.GetDataTable("SELECT ID, Name, Address, Mobile FROM " + '"'+ table +'"');
只需明确指定您需要的列,而不是选择不需要的列然后再删除它们:
SELECT "Id", "Name", "Address", "Mobile"
使用 SELECT *
是不礼貌的,因为它会使您与数据库的合同不稳定 - 如果列配置更改,您将得到不可预知的结果。
考虑使用
dataTable.Columns.Remove("ColumnName")
要么
dataTable.Columns.RemoveAt(ColumnNumber)