मैं कुछ लॉगिंग/ऑडिटिंग कोड लिख रहा हूं जो उत्पादन में चल रहा है (न केवल जब त्रुटियों को फेंक दिया जाता है या विकास के दौरान)। Coding Horror's experiences with dead-locking and logging पढ़ने के बाद, मैंने फैसला किया कि मुझे सलाह लेनी चाहिए। (जेफ का "लॉगिंग नहीं" का समाधान मेरे लिए काम नहीं करेगा, यह कानूनी रूप से अनिवार्य सुरक्षा लेखा परीक्षा है)एमएस एसक्यूएल सर्वर में केवल एक तालिका में संलग्न करने पर लॉकिंग को कम करने के लिए सलाह?
क्या विवाद और मृत-लॉकिंग को कम करने के लिए उपयुक्त अलगाव स्तर है? कोई पूछताछ संकेत मैं सम्मिलित कथन या संग्रहीत प्रक्रिया में जोड़ सकते हैं?
मुझे ऑडिट तालिका को छोड़कर सबकुछ के लिए लेनदेन संबंधी अखंडता के बारे में गहराई से परवाह है। विचार यह है कि इतना लॉग इन किया जाएगा कि अगर कुछ प्रविष्टियां विफल हो जाती हैं, तो यह कोई समस्या नहीं है। अगर लॉगिंग कुछ अन्य लेनदेन बंद कर देता है - यह बुरा होगा।
मैं किसी डेटाबेस या फ़ाइल पर लॉग इन कर सकता हूं, हालांकि फ़ाइल में लॉग इन करना कम आकर्षक है क्योंकि मुझे किसी भी तरह के परिणाम प्रदर्शित करने में सक्षम होना चाहिए। किसी फ़ाइल में लॉग इन करना (लगभग) गारंटी देता है कि लॉगिंग अन्य कोड में हस्तक्षेप नहीं करेगी।
एसक्यूएल सर्वर का कौन सा संस्करण? –
एसक्यूएल 2000, हालांकि अफवाहें हैं कि किसी दिन कार्यालय एसक्यूएल 2008 पर कूद जाएगा। – MatthewMartin