我有一个表,其中填充了包含列的数据
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)); }
答案 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)