MySQL 5.0.27 kullanıyorum ve işlem görmeye çalışıyorum. Bu işe alınamıyor halaMySQL'deki İşlemler - Geri Dönülemiyor
http://dev.mysql.com/doc/refman/5.0/es/connector-net-examples-mysqltransaction.html
ve: Ben bu öğretici izledi. Güncelleme için çalışıyorum tablo InnoDB ise ve yürütmek çalıştık 'set autocommit = 0' ama ben yazdım kod şudur .... şey yapıyor gibi görünmüyor:
public int transactionUpdate()
{
MySqlConnection connection = new MySqlConnection(connStr);
connection.Open();
MySqlCommand command = connection.CreateCommand();
MySqlTransaction trans;
trans = connection.BeginTransaction();
command.Connection = connection;
command.Transaction = trans;
try
{
command.CommandText = "SET autocommit = 0";
command.executeNonQuery();
command.CommandText = "UPDATE TBL.rec_lang rl SET rl.lang_code = 'en-us' WHERE rl.recording=123456";
command.executeNonQuery();
command.CommandText = "UPDATE TBL.rec_lang rl SET rl.lang_code = en-us WHERE rl.recording=123456";
command.executeNonQuery();
trans.Commit();
}
catch(Exception ex)
{
try
{
trans.Rollback();
}
catch(MySqlException mse)
{
log.error(mse);
}
}
}
İkinci komut, 'etrafındaki' en-us 'eksik olduğundan başarısız oluyor. Bu, ilk sorguyu da önceki bir değere geri döndürmeli, ancak değil. Bana neyi yanlış yaptığımı söyler misin ??
MySQLConnector v. 6.3.6.0
MySQL v. 5.0.27
C# VS2010
"ex" istisnasını yutuyorsunuz. İyi değil! Bunu yapma! –
Hangi depolama motoru kullanıyorsunuz? İşlem doğrudan bir yönetici veya konsol kullanarak çalışır mı? –
depolama motoru InnoDB 'e göre (SQLYog -> seçme tablosunda, gelişmiş özellikler sağ tıklayın, motor = InnoDB Sürüm 10) – Austin