即使断开连接,MySQL也会插入行

时间:2015-01-31 12:52:41

标签: c# mysql

我正在编写一个C#应用程序,我将值插入到Mssql和Mysql表中.Mssql没有问题。如果Mssql服务器断开连接,它不会将值插入Mssql表。

但是在Mysql中如果Mysql服务器在插入操作期间断开连接,则有时会插入该值。如果Mysql服务器断开连接,则捕获到mysqlException,但有时会插入值。

以下是代码的摘录:

try
{
    mysqlConn.Open();
    MySqlCommand command = new MySqlCommand();
    command.Connection = mysqlConn;
    command.CommandText = //INSERT INTO TABLE
    command.ExecuteNonQuery();
}catch (MySqlException ex){
     Console.WriteLine("MYSQL Exception: " + ex.Message);
}catch (Exception ex){
     Console.WriteLine("MYSQL Exception: " + ex.Message);
}finally{
    mysqlConn.Close();
}

如果在操作期间没有断开连接,并且如果在操作期间断开连接时未插入,我如何确保将值插入到Mysql表中?

1 个答案:

答案 0 :(得分:0)

我通过在Mysql数据库中的字段中添加唯一键来解决问题,这样就不会多次插入任何一行。