Veya geri alma bir okuma hareketi tamamlamak gerekir?
Yalıtım düzeyini belirlemek böylece bir hareketin içinde ben idam okumak bir sorgu var. Sorgu tamamlandıktan sonra, ne yapmalıyım?
- Hareketi tamamlamak
- Geri alma hareketi
- Hiçbir işlem kullanarak blok sonunda geri dönmesine neden olur)
Her yapmanın anlamı nedir?
using (IDbConnection connection = ConnectionFactory.CreateConnection())
{
using (IDbTransaction transaction = connection.BeginTransaction(IsolationLevel.ReadUncommitted))
{
using (IDbCommand command = connection.CreateCommand())
{
command.Transaction = transaction;
command.CommandText = "SELECT * FROM SomeTable";
using (IDataReader reader = command.ExecuteReader())
{
// Read the results
}
}
// To commit, or not to commit?
}
}
EDİT: Bu soru Eğer bir işlem olabilir ya da eğer hareket düzeyini ayarlamak için başka yollar varsa. Soru bir şey değiştirmez bir işlem tamamlanmış herhangi bir fark ya da geri alındı. Performans farkı var mı? Diğer bağlantıları etkilemez mi? Başka farklılıklar var mı?
CEVAP
Taahhüt. Dönem. Başka mantıklı alternatif yok. Eğer bir hareket başlarsa, kapatın. İşlemekle vardı olabilir tüm kilitleri serbest bırakır, ve Readuncommıtted veya seri hale getirilebilir yalıtım düzeyi ile aynı derecede mantıklı. Örtülü geri alma belki teknik olarak eşdeğer olsa - - güvenmek, sadece kötü formu.
Eğer bu sizi ikna bulmazlarsa, sadece kodunuzu ortasında bir update deyimi ekler ve onun veri oluşur kaldıran örtülü geri alma izini olan sonraki adam hayal edin.
SQL Kimlik (Otomatik Sayı) bir Hareket...
Bırakın hata ayıklama bilgisi ile &quo...
hangi noktaya JAVA_HOME, yapışkan notl...
Ben kullanma= gerekir! veya <&TSQL ...
Deyimini kullanarak bir geri alma eğer...