如何将数据表值插入数据库

时间:2019-06-14 05:17:24

标签: c# datatable

我有一个表,其中填充了包含列的数据

Name   Module1Marks Module2Marks Module3Marks

我必须将此数据插入列

到数据库表中
Name    ModuleId    Marks

在这里,通过检查列名,我必须将ModuleId以及标记和名称插入到数据库中

例如如果columnname是Module1Marks,那么我将使用ModuleId = 1和表的Module1Marks列中的值作为要插入数据库的标记

请帮助我-我该怎么做?

      int ModuleId = 1;
               foreach (DataRow row in dt.Rows)
               {
                   for(int i = 0; i < dt.Columns.Count; i++)
                   {
                       if (dt.Columns[i].ColumnName == "OSC")
                       {
                           string marks = row[i].ToString();

                           NewInsertFunction(row[1].ToString(), row[2].ToString(), int.Parse(marks) , 1);
                       }
                       if (dt.Columns[i].ColumnName == "OOP")
                       {
                           string marks = row[i].ToString();
                           NewInsertFunction(row[0].ToString(), row[1].ToString(), int.Parse(marks), 2);
                       }
                   }


       protected void NewInsertFunction(string PRN, string Name,  int Marks,    int ModuleId)    {
       int CourseID = Convert.ToInt32( DropDownListCourse.SelectedItem.Value);
           Convert.ToInt32(Request.Form["DropDownListCourse"].ToString());
       int startIndex = 4;
       int endIndex = PRN.Length - 4;
       int centreID = Convert.ToInt32(PRN.Substring(startIndex, endIndex)); }

2 个答案:

答案 0 :(得分:0)

请看下面的代码。

 private void ExtractData()
        {
            int moduleId;
            int marks;
            string name;
            foreach (DataRow row in custTable.Rows)
            {
                name = row["Name"].ToString();
                moduleId = 1;
                marks = int.Parse(row["Module1Marks"].ToString());
                NewInsertFunction(name, moduleId, marks);

                moduleId = 2;
                marks = int.Parse(row["Module2Marks"].ToString());
                NewInsertFunction(name, moduleId, marks);

                moduleId = 3;
                marks = int.Parse(row["Module3Marks"].ToString());
                NewInsertFunction(name, moduleId, marks);
            }
        }
        private void NewInsertFunction(string Name, int ModuleId, int Marks)
        {
            // Provide the Insert logic
        }

答案 1 :(得分:0)