当我通过c#连接到mysql时,它给出了一个致命错误

当我执行它时,它给出了一个致命错误,在我的数据库中没有任何东西。有人请帮忙。但是,当我用2个文本框执行时,它工作正常。列名是相同的。当我通过c#连接到mysql时,它给出了一个致命错误

private void button1_Click(object sender, EventArgs e) 

{

string myConn = "server=localhost;database=check;uid=root;pwd=;";

MySqlConnection conn = new MySqlConnection(myConn);

try

{

conn.Open();

String myInsertSQL ="INSERT INTO student VALUES(?Student_FName,?Student_LName,?Address_1,?Address_2,?DOB,?E-mail,?Batch_id,?Parent_FName,?Parent_LName)";

MySqlCommand cmd = new MySqlCommand(myInsertSQL, conn);

cmd.Parameters.AddWithValue("?Student_FName",textBox1.Text);

cmd.Parameters.AddWithValue("?Student_LName",textBox2.Text);

cmd.Parameters.AddWithValue("?Address_1",textBox3.Text);

cmd.Parameters.AddWithValue("?Address_2",textBox4.Text);

cmd.Parameters.AddWithValue("?DOB",textBox5.Text);

cmd.Parameters.AddWithValue("?E-mail",textBox6.Text);

cmd.Parameters.AddWithValue("?Batch_id",textBox7.Text);

cmd.Parameters.AddWithValue("?Parent_FName",textBox8.Text);

cmd.Parameters.AddWithValue("?Parent_LName",textBox9.Text);

cmd.ExecuteNonQuery();//when executing it gives a fatal error

}

catch (MySqlException ex)

{

MessageBox.Show(ex.Message);

}

finally

{

conn.Close();

}

}

回答:

你没有提到什么是确切的错误。但我认为这是因为您在参数中使用了?而不是@

例如改变?Student_FName@Student_FName

和写入连接字符串

string myConn = "Server=localhost;Port=3306;Database=DBName;Uid=UserName;Pwd=Password;" 

而且我看到参数为“电子邮件”,我想它的一个错字。它应该是“E_mail”。

以上是 当我通过c#连接到mysql时,它给出了一个致命错误 的全部内容, 来源链接: utcz.com/qa/264191.html

回到顶部