Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将不同的工作表从excel文件保存到mysql数据库_C#_Mysql - Fatal编程技术网

C# 如何将不同的工作表从excel文件保存到mysql数据库

C# 如何将不同的工作表从excel文件保存到mysql数据库,c#,mysql,C#,Mysql,我有一个将excel文件导入并显示到datagridview的代码,我想知道您是否可以帮助我如何将这些表格从excel文件保存到mysql中的数据库??我的表名是一年级、二年级和出勤率,我使用的是c。无论如何,这是我的代码: private void btnSaved_Click(object sender, EventArgs e) { int qtr = 0; string att_qtr = "ATTENDANCE";

我有一个将excel文件导入并显示到datagridview的代码,我想知道您是否可以帮助我如何将这些表格从excel文件保存到mysql中的数据库??我的表名是一年级、二年级和出勤率,我使用的是
c
。无论如何,这是我的代码:

private void btnSaved_Click(object sender, EventArgs e)
        {
            int qtr = 0;
            string att_qtr = "ATTENDANCE";

            MySqlConnection con = new MySqlConnection("Server = DESKTOP-9H7QBOH; Database = sti_spms; UID = root; Password = 1234;");
                try
                {
                    string query = "INSERT INTO tbl_secondsem_grades(STUDENT_NO, NAME, SUBJECT, SECTION, GRADE, INITIAL_GRADE, QTR)" + "Values(@STUDENT_NO, @NAME, @SUBJECT, @SECTION, @GRADE, @INITIAL_GRADE, @QTR)";
                    query += "INSERT INTO tbl_attendance(STUDENT_ID, NAME, SUBJECT, SECTION, TOTAL_ABSENCES)" + "Values(@STUDENT_ID, @NAME, @SUBJECT, @SECTION, @TOTAL_ABSENCES)";
                    MySqlCommand cmd = new MySqlCommand(query, con);
                    DataTable dt = new DataTable();
                    con.Open();
                    for (int i = 0; i < dataGridView1.Rows.Count -1; i++)
                    {

                        if(quarter.Equals("1st QTR"))
                        {
                            qtr = 1;
                        }
                        else if(quarter.Equals("2nd QTR"))
                        {
                            qtr = 2;
                        }
                        else if(quarter.Equals("3rd QTR"))
                        {
                            qtr = 3;
                        }
                        else if(quarter.Equals("4th QTR"))
                        {
                            qtr = 4;
                        }
                        else if (quarter.Equals("ATTENDANCE"))
                        {
                            att_qtr = "ATTENDANCE";
                        }
                        else
                        {
                            MessageBox.Show("Error!");
                        }

                        //int num = Convert.ToInt32(dataGridView1.Rows[i].Cells["STUDENT NO"].Value.ToString());
                        cmd.Parameters.AddWithValue("@STUDENT_NO", dataGridView1.Rows[i].Cells["STUDENT NO"].Value.ToString());
                        cmd.Parameters.AddWithValue("@NAME", dataGridView1.Rows[i].Cells["NAME"].Value.ToString());
                        cmd.Parameters.AddWithValue("@SUBJECT", dataGridView1.Rows[i].Cells["SUBJECT"].Value.ToString());
                        cmd.Parameters.AddWithValue("@SECTION", dataGridView1.Rows[i].Cells["SECTION"].Value.ToString());
                        cmd.Parameters.AddWithValue("@INITIAL_GRADE", dataGridView1.Rows[i].Cells["INITIAL GRADE"].Value.ToString());
                        cmd.Parameters.AddWithValue("@GRADE", dataGridView1.Rows[i].Cells["QG"].Value.ToString());
                        cmd.Parameters.AddWithValue("@QTR", qtr);
                        cmd.Parameters.AddWithValue("@STUDENT_NO", dataGridView1.Rows[i].Cells["STUDENT NO"].Value.ToString());
                        cmd.Parameters.AddWithValue("@NAME", dataGridView1.Rows[i].Cells["NAME"].Value.ToString());
                        cmd.Parameters.AddWithValue("@SUBJECT", dataGridView1.Rows[i].Cells["SUBJECT"].Value.ToString());
                        cmd.Parameters.AddWithValue("@SECTION", dataGridView1.Rows[i].Cells["SECTION"].Value.ToString());
                        cmd.Parameters.AddWithValue("@Total_Absences", dataGridView1.Rows[i].Cells["Total_Absences"].Value.ToString());
                        cmd.ExecuteNonQuery();
                        cmd.Parameters.Clear();
                    }

                }
                catch (Exception ex)
                {
                    MessageBox.Show("Data  Sucessfully Saved!");
                }

        }
private void btnSaved_单击(对象发送者,事件参数e)
{
int-qtr=0;
字符串att_qtr=“出席”;
MySqlConnection con=newmysqlconnection(“Server=DESKTOP-9H7QBOH;Database=sti_spms;UID=root;Password=1234;”;
尝试
{
string query=“插入tbl_secondsem_成绩(学生编号、姓名、科目、区段、年级、初始成绩、QTR)”+“值(@STUDENT_编号、@NAME、@SUBJECT、@SECTION、@GRADE、@INITIAL_成绩、@QTR)”;
查询+=“插入tbl_出勤(学生ID、姓名、科目、部分、总缺勤)”+“值(@STUDENT_ID、@NAME、@SUBJECT、@SECTION、@TOTAL_缺勤)”;
MySqlCommand cmd=新的MySqlCommand(查询,con);
DataTable dt=新的DataTable();
con.Open();
对于(int i=0;i
快速部分

...
MySqlCommand cmd = new MySqlCommand(query, con);
DataTable dt = new DataTable();
cmd.Paramters.Add("@STUDENT_NO", MySqlDbType.Int); .. guessing this is an int - otherwise choose type
cmd.Paramters.Add("@NAME", MySqlDbType.String);
... // add rest here
con.Open();
...
for (.. ) {
    ...
    int studentno;
    int.TryParse(dataGridView1.Rows[i].Cells["STUDENT NO"].Value.ToString(), out studentno);
    cmd.Paramters["@STUDENT_NO"].Value = studentno;
    cmd.Paramters["@NAME"].Value = dataGridView1.Rows[i].Cells["NAME"].Value.ToString();
    ...
}

这段代码有什么问题?你的代码出了什么问题?@ChetanRanpariya我的错误是STUDENT\u NO已经定义了。@PaulF它说STUDENT\u NO已经定义了你在命令中添加参数
@STUDENT\u NO
两次。删除行
AddWithValue(@STUDENT\u NO…
AddWithValue(@QTR)之后,…