是的,C#的MySQL Connector支持事務(wù)。你可以使用MySQLTransaction類來(lái)開(kāi)始、提交和回滾事務(wù)。事務(wù)使得一組數(shù)據(jù)庫(kù)操作要么全部成功要么全部失敗,從而保持?jǐn)?shù)據(jù)的一致性和完整性。以下是一個(gè)簡(jiǎn)單的示例:
using MySql.Data.MySqlClient;
class Program
{
static void Main()
{
string connStr = "server=localhost;user=root;database=mydatabase;password=mypassword;";
using (MySqlConnection conn = new MySqlConnection(connStr))
{
conn.Open();
using (MySqlTransaction transaction = conn.BeginTransaction())
{
try
{
MySqlCommand cmd = conn.CreateCommand();
cmd.Transaction = transaction;
cmd.CommandText = "INSERT INTO mytable (column1, column2) VALUES ('value1', 'value2')";
cmd.ExecuteNonQuery();
// 執(zhí)行其他數(shù)據(jù)庫(kù)操作
transaction.Commit();
Console.WriteLine("事務(wù)成功提交");
}
catch (Exception ex)
{
transaction.Rollback();
Console.WriteLine("事務(wù)回滾:" + ex.Message);
}
}
}
}
}
在這個(gè)示例中,我們創(chuàng)建了一個(gè)MySQL連接,并在其中開(kāi)啟了一個(gè)事務(wù)。我們執(zhí)行了一個(gè)INSERT語(yǔ)句來(lái)插入一條數(shù)據(jù),并且如果出現(xiàn)異常則回滾事務(wù)。如果一切正常,則提交事務(wù)。您可以根據(jù)自己的需要進(jìn)行更復(fù)雜的事務(wù)操作。