Düzeltme: SQLOLEDB sağlayıcısı hatalı hareketi açık bırakır

Makale çevirileri Makale çevirileri
Makale numarası: 281633 - Bu makalenin geçerli olduğu ürünleri görün.
Bu makale arşivlenmiştir. "Olduğu gibi" sunulmaktadır ve bundan sonra güncelleştirilmeyecektir.
# HATA: 58292 (SQLBUG_70)
# HATA: 235846 (shiloh)
Hepsini aç | Hepsini kapa

Bu Sayfada

Belirtiler

Belirli bir dizi açık hareketleri ve SQLOLEDB sağlayıcısı yanlış kullanılması, bir uygulama programı parametrelerinde ilgili komutları çalıştıran kaydedilmemiş bir hareketi açık bırakır. Bu durum ciddi engelleme ve diğer sorunları neden olabilir.

Neden

SET 'implicit_transactions' seçeneği KAPALı olarak ayarlanmış olsa da, SQLOLEDB sağlayıcısı örtülü bir hareketi açıyor.

Çözüm

mdac 2.6

Bu sorunu gidermek için <a0></a0>, Microsoft Data Access Components 2.6 için en son hizmet paketini edinin. Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
300635MDAC 2.6 en son hizmet paketi nasıl elde edilir

Düzeltme

ÖNEMLI: Bu düzeltmeyi uygulamadan önce Microsoft Data Access Components 2.6 sürümü yüklü olmalıdır.

Bu düzeltmenin ingilizce sürümünde aşağıdaki dosya öznitelikleri olmalı veya daha yenisi:
   Date       Time     Version     Size      File name      Platform
   -----------------------------------------------------------------
   11/22/00   8:43pm   8.00.0225   491,584   Sqloledb.dll   Intel
   11/22/00   8:43pm   8.00.0225    61,440   Sqloledb.rll   Intel
				
Not: dosya bağımlılıkları nedeniyle, en son düzeltme veya özellik, yukarıdaki dosyaları içeren ek dosyalar da içerebilir.

Pratik Çözüm

Bu soruna geçici bir çözüm bulmak için <a0></a0>, aşağıdakilerden birini yapın:
  • SQLOLEDB yerine ODBC, OLEDB Sağlayıcısı kullanmak sağlayıcısı.

    -VEYA-
  • Sorun oluşturduğu kodu etrafındaki diğer hareketler yerleştirin.

Durum

Microsoft, bu Microsoft OLE DB Provider for SQL Server, Microsoft Data Access Components (MDAC) 2.1 ve 2.5, 2.6 sürümlerinde bulunan bir sorun olması onaylamıştır.

mdac 2.6

Bu sorun ilk olarak Microsoft Data Access Components 2.6 Service Pack 1 giderilmiştir.


mdac 2.5

Bu sorun ilk olarak Microsoft SQL Server 7.0 Service Pack 4 ile birlikte gelen Sqlredis.exe sürümünde giderilmiştir.

Daha fazla bilgi

Uygulama izleme ile SQL Server Profiler'ı SQLOLEDB sağlayıcısı aşağıdaki SQL Server'a gönderdiğini görebilirsiniz:
SET FMTONLY ON select ... SET FMTONLY OFF
set implicit_transactions off SET NO_BROWSETABLE OFF
				
Bu nedenler ' implicit_transaction ' zaten açık.

OLEDB Sağlayıcısı ODBC ve SQL Server sürücüsü için bunun yerine kullanırken tam olarak aynı Visual Basic/ADO koduna SQL Server'a a?a??daki gönderen:
set implicit_transactions off SET NO_BROWSETABLE OFF
SET FMTONLY ON select  ... SET FMTONLY OFF
				
böylece FMTONLY SELECT örtülü bir hareket ile birlikte SQLOLEDB açar. Uygulama, bu işlem hiç açılmış olduğundan, ancak uygulama normalde hiçbir zaman bu kapanacak. Bu işlem yalnızca, sonraki açık hareket üzerinde kapatılır.

Özellikler

Makale numarası: 281633 - Last Review: 24 Şubat 2014 Pazartesi - Gözden geçirme: 6.4
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft Data Access Components 2.1
  • Microsoft Data Access Components 2.5
  • Microsoft Data Access Components 2.6
Anahtar Kelimeler: 
kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbbug kbfix kbmdac260sp1fix kbqfe KB281633 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:281633

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com