C# ASPX插入到MySQL数据库

C# ASPX插入到MySQL数据库,c#,mysql,asp.net,visual-studio,parameters,C#,Mysql,Asp.net,Visual Studio,Parameters,我对编程一无所知,在将数据插入表ticket时遇到了问题。该代码在语法或逻辑上是否有错误,应该插入ticket信息?我没有得到任何错误,但它也没有插入数据 using (MySqlCommand newercmd = new MySqlCommand("INSERT INTO ticket (StudentID, ClassID, TicketTitle, TicketStatus, Module, ExcerciseNumber, TCode, StartingTime) VALUES (Se

我对编程一无所知,在将数据插入表
ticket
时遇到了问题。该代码在语法或逻辑上是否有错误,应该插入ticket信息?我没有得到任何错误,但它也没有插入数据

using (MySqlCommand newercmd = new MySqlCommand("INSERT INTO ticket (StudentID, ClassID, TicketTitle, TicketStatus, Module, ExcerciseNumber, TCode, StartingTime) VALUES (Select StudentID from student where GlobalID = @GlobalID, @ClassID, @TicketTitle, '1', @Module, @Excercise, @TCode, NOW()", con))
{
    newercmd.Parameters.AddWithValue("GlobalID", globalbox.Text);
    newercmd.Parameters.AddWithValue("ClassID", ClassBox.Text);
    newercmd.Parameters.AddWithValue("TicketTitle", TitleBox.Text);
    newercmd.Parameters.AddWithValue("Module", ModuleBox.Text);
    newercmd.Parameters.AddWithValue("Excercise", ExcerciseBox.Text);
    newercmd.Parameters.AddWithValue("TCode", TcodeBox.Text);

    newercmd.ExecuteNonQuery();
    con.Close();
}
完整的aspx.cs代码如下:

protected void Button1_Click(object sender, EventArgs e)
{

    using (MySqlConnection con = new MySqlConnection(@"............"))
    {

        string checkglobal = "select count(*) from student where GlobalID= @GlobalID";
        MySqlCommand cmd = new MySqlCommand(checkglobal, con);

        con.Open();

        cmd.Parameters.AddWithValue("@GlobalID", globalbox.Text);
        var objectuserexists = cmd.ExecuteScalar();
        int userexists = Convert.ToInt32(objectuserexists);

        // if exists do nothing as we already have them stored!
        if (userexists > 0)
        { }
        else
        {
            // does not exists insert into student table
            using (MySqlCommand newcmd = new MySqlCommand("INSERT INTO student (GlobalID) values (@GlobalID)", con))
            {
                newcmd.Parameters.AddWithValue("GlobalID", globalbox.Text);

                newcmd.ExecuteNonQuery();

            }


            {

                //insert into ticket table
                using (MySqlCommand newercmd = new MySqlCommand("INSERT INTO ticket (StudentID, ClassID, TicketTitle, TicketStatus, Module, ExcerciseNumber, TCode, StartingTime) VALUES (Select StudentID from student where GlobalID = @GlobalID, @ClassID, @TicketTitle, '1', @Module, @Excercise, @TCode, NOW()", con))
                {
                    newercmd.Parameters.AddWithValue("GlobalID", globalbox.Text);
                    newercmd.Parameters.AddWithValue("ClassID", ClassBox.Text);
                    newercmd.Parameters.AddWithValue("TicketTitle", TitleBox.Text);
                    newercmd.Parameters.AddWithValue("Module", ModuleBox.Text);
                    newercmd.Parameters.AddWithValue("Excercise", ExcerciseBox.Text);
                    newercmd.Parameters.AddWithValue("TCode", TcodeBox.Text);

                    newercmd.ExecuteNonQuery();
                    con.Close();
                }

            }

        }
    }
}

我想这可能是我的骗局。现在进行测试,试图找出问题所在,但在using块中有一个conn.close()。当你有一个using块时,你不调用conn.close;释放对象时会为您调用它(“使用”就是这样做的)。请检查您与正确数据库的连接,并检查从
newercmd.ExecuteNonQuery()返回的rowsAffected我想这可能是我的骗局。现在进行测试,试图找出问题所在,但在using块中有一个conn.close()。当你有一个using块时,你不调用conn.close;释放对象时会为您调用它(“使用”就是这样做的)。请检查您与正确数据库的连接,并检查从
newercmd.ExecuteNonQuery()返回的rowsAffected