首页 > 解决方案 > 如何将数据表值插入数据库

问题描述

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

Name   Module1Marks Module2Marks Module3Marks

我必须将此数据插入到带有列的数据库表中

Name    ModuleId    Marks

在这里,通过检查列名,我必须将 ModuleId 连同标记和名称一起插入数据库

例如。如果列名是 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)); }

标签: c#datatable

解决方案


请看下面的代码。

 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
        }

推荐阅读