TN067: Veritabanı erişim ISAPI sunucu uzantısı

Sunucu Uzantıları ISAPI DLL dosyalarıdır. Sunucu işlem alanında çalışır. Bir ISAPI uzantısı için yapılan eş zamanlı istekler ayrı iş parçacıkları tarafından işlenir. Bu nedenle, bir ISAPI uzantısı kod evreli olmalıdır.

Durum

Com başlatma vad veritabanı erişim yöntemleri, iş parçacığı güvenli değildir. Bir iş parçacığı com kitaplığı başlatılırken ve sonra veri erişim için başka bir iş parçacığı kullanarak belirli sorun yatıyor. Microsoft odbc Masaüstü Sürücü geçerli uygulama, bu kategori içine düşüyor. Visual c++ ile birlikte bu sürücüleri (dBase, Microsoft Visual FoxPro, Microsoft Access, Microsoft Excel, Paradox ve metin) evreli olmayan Microsoft Jet 3.0 veritabanı altyapısı kullanın. Bir ISAPI uzantısı çok iş parçacıklı ortamda güvenilir çalışmıyor da, veri erişim nesneleri (dao) bir com tabanlı API, yani.

Orada-ebilmek var olmak evreli olmayan diğer veritabanı erişim yöntemleri.

Çözünürlük

Bir ISAPI sunucu uzantısı bir veritabanına erişmek için birden çok iş parçacığı kullanım için tasarlanmış ve test odbc sürücüsü kullanın. Microsoft odbc sürücüler için Microsoft sql Server 6.x bir örnektir.

Mfc odbc veritabanı sınıflarını, mfc 4.2 gibi evreli. Bu sınıflar ile kullandığınız herhangi bir odbc veritabanı sürücüsü de iş parçacığı güvenli olduğundan emin olun.

Önceki sürüme mfc 4.2 mfc odbc veritabanı sınıflarını kullanan uygulamalar, bir kerede yalnızca bir iş parçacığının mfc veritabanı kodu kere görüntülendi sağlamak için kritik bir bölümün içine yerleştirilen veritabanı kodu olması gerekir. Daha fazla bilgi için bkz: sınıfın CCriticalSection.

Dao com tabanlı nesneler kullandıkları için şu anda, mfc dao veritabanı sınıflarını evreli olmayan.

Teknik notlar numarasına göre |nbsp; Teknik notlar kategorisine göre

Index