根据列C#将DataTable拆分成多个DataTable

Split DataTable into multiple DataTables based on column C#

我已将 CSV 文件上传到数据表,现在想要填充现有数据库,但是 CSV 文件中的值包含需要填充到数据库中多个表的列。我的理论是将 dataTable 拆分为多个表,然后分别填充数据库表。首先,这是最好的方法吗?其次,如何根据列名拆分数据表?

例如,我上传了一个包含以下内容的 CSV 文件 headers:

Student_No,姓氏,名字,Module_Code,Module_Name,Staff_No,姓氏,名字。

然后我想将数据表拆分为:

数据表 1

Student_No、姓氏、名字

数据表 2

Module_Code、Module_Name

数据表 3

Staff_No,姓氏,名字

非常感谢所有帮助,谢谢。

更新!

我通过复制 DataTable 并删除我不需要填充数据库的列来创建多个 DataTable,从而设法按列名拆分 DataTable。

private static DataTable SplitDataTableModule(DataTable d1)
    {

        DataTable dataTable1;
        dataTable1 = d1.Copy();
        dataTable1.Columns.RemoveAt(0); // remove student_no
        dataTable1.Columns.RemoveAt(1); // remove student surname
        dataTable1.Columns.RemoveAt(2); // remove student firstname
        dataTable1.Columns.RemoveAt(5); // remove staff_no
        dataTable1.Columns.RemoveAt(6); // remove staff surname
        dataTable1.Columns.RemoveAt(7); // remove staff firstname

        return d1;
    }