Düzeltme: Tüm ifadeleri yürütme yeniden derler, saklı yordam eşzamanlı yürütülmesi başarısız olabilir

Makale çevirileri Makale çevirileri
Makale numarası: 250506 - 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: 55251 (SQLBUG_70)
Hepsini aç | Hepsini kapa

Belirtiler

Bir saklı yordam aşağıdaki koşullar yerine getirilirse, içinde bulunan tüm ifadeyi çalıştırmak hata vermeden başarısız:

  • Birden çok bağlantı aynı anda aynı yordamı yürütme.

  • Bu yordamın dışında oluşturulan geçici bir tablo için BIR başvuru yapıldı.

  • (Olası harekete geçirici 'otomatik güncelleştirme istatistikleri') bir recompile neden olabilecek bir veya birden çok deyimi, bu geçici tabloyu referansı izleyin.
Tüm ifadeleri, bazı diğerleri başarısız olmasına karşın, yordamın çalışan kullanıcılar için yürütme.

Pratik Çözüm

Yordam WITH YENIDEN yan tümcesiyle birlikte oluşturmak veya yordamı çalıştırırken yan tümcesi ILE yeniden DERLEYIN'ı kullanın.

Durum

Microsoft bu sorunun, SQL Server 7.0 için onaylamıştır. Bu sorun, Microsoft SQL Server 7.0 için ABD Service Pack 2'de giderilmiştir. Daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
254561INF: Microsoft SQL Server 7.0 ve Microsoft Data Engine (MSDE) 1.0 Service Pack 2 nasıl elde edilir
Daha fazla bilgi için, birincil destek sağlayıcınıza başvurun.

Daha fazla bilgi

Geçerli yordamın dışında oluşturulan geçici bir tablo için bir başvuru yapılması durumunda, bu yordamın ilk kez çalıştırıldığında ifade ve bir sonraki deyimi derlenebilir değil. Tablonun şema hakkında hiçbir bilgi bilinen olmasıdır. Bu deyimi yürütme ulaşır ve şema ve önem değerler kullanılabilir yordamı bu bilgileri kullanarak derlenmiş çekirdekler. Derleme süreyi en aza indirmek için <a0></a0>, SQL Server bu durumda "kısmi derleme" yapar ve yalnızca bu kadar deyimleri için bir sorgu planı oluşturur.

Birden çok kullanıcı, derlenmiş bir plan paylaşabilirsiniz bu yana SQL Server 7.0 bağlantılarından birini recompile gerçekleştireceğini emin olmak için recompiles serializes. Diğer bağlantılar da derlemeniz gerekir, bunlar, recompile tamamlamak ve yürütme sırasında sonraki adımla devam etmek için ilk bağlantıda bekleyin.

Çeşitli aşamalar yürütme sırasında iki bağlantılardır ve recompile tetikleyen bir yordamın dışında oluşturulan geçici tabloya başvuru ilk öncedir bir durumla karşılaşırsanız, bu deyimi ulaştığında bir plan derleme durduracak. Ikinci bağlantı yeri bundan sonra ve ilk bağlantının derleme sırasında da bir recompile tetikler, yürütme devam eder ve yanlış, tüm ifadeleri planda yürüttü inanmaktadır.

WITH YENIDEN kullanırsanız, yordam oluşturulduğunda veya yürütüldüğünde, iki bağlantı hiçbir zaman aynı derlenmiş planı paylaşmak ve bu koşulu hiçbir zaman karşılaşır.

Mümkünse, ayrıca her zaman bir yordamın recompile gerektirdiğinden Geçerli yordamın dışında oluşturulan geçici bir tablo başvurusu için önerilir. Diğer programlama uygulamalarını saklı yordamlar için "Transact-SQL ipuçları" konusu altında SQL çevrimiçi bulunabilir.

Derlenmiş ne zaman bir yordam çekirdekler olmadığını belirlemek için <a0></a0>, SQL Profiler SP:recompile olayda izleyebilirsiniz.

Özellikler

Makale numarası: 250506 - Last Review: 5 Şubat 2014 Çarşamba - Gözden geçirme: 2.0
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft SQL Server 7.0 Standard Edition
Anahtar Kelimeler: 
kbnosurvey kbarchive kbmt kbbug kbfix KB250506 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:250506

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