वे दोनों मुखौटा त्रुटियां नहीं करते हैं। DoCmd.SetWarnings मास्क त्रुटियों और सिस्टम चौड़ा है, जो आप उपयोग कर रहे हैं एक ही आवेदन तक ही सीमित नहीं है। संबंधित DoCmd.SetWarnings True
के बिना DoCmd.SetWarnings False
का अर्थ यह होगा कि पीसी पर किसी भी एक्सेस एप्लिकेशन में किसी भी संकेत के बिना कार्रवाई प्रश्न चलेंगे।
निष्पादन चेतावनी फेंक देता है, आपको चेतावनी देने की चेतावनी, जैसे क्वेरी निष्पादित करने में विफल रही है, लेकिन ऐसी चेतावनियां नहीं देती है जिनकी आपको आवश्यकता नहीं हो सकती है, जैसे "क्या आप वाकई इस क्वेरी को चलाने के लिए चाहते हैं"।
In this thread एलन ब्राउन, एक्सेस एमवीपी, का कहना है कि वह सेट चेतावनी का उपयोग नहीं करता है।
एक के रूप में अलग रूप में, मैं आम तौर पर CurrentDB का एक उदाहरण का उपयोग करते हुए, के रूप में यह आप एक रिकार्ड गिनती वापस जाने के लिए अनुमति देगा, की सिफारिश करेंगे अन्य बातों के साथ है, तो:
Set db = CurrentDB
db.Execute sSQL, dbFailOnError
अपनी टिप्पणी से: 'बिना चलाने के लिए अंतर्निहित चेतावनियां, CurrentDB का एक उदाहरण उपयोग करें और SQL स्ट्रिंग को निकालें 'जो मुझे विश्वास दिलाती है कि' .xecute' चेतावनी नहीं फेंकता है? – JimmyPena
ऊपर संपादित देखें। – Fionnuala
इस पर पहुंचने का एक और तरीका 'RunSql' से शुरू करना है। इसे पहले उपयोगकर्ता को यह पुष्टि करने की आवश्यकता होती है कि वह कार्रवाई क्वेरी निष्पादित करना चाहती है, फिर बाद में प्रभावित रिकॉर्ड्स की संख्या के बारे में एक संदेश प्रदर्शित करती है। लोग उन संदेशों को दबाने के लिए 'SetWarnings = False' का उपयोग करते हैं। लेकिन '[डेटाबेस] .xecute' उन संदेशों में से कोई भी प्रस्तुत नहीं करता है, इसलिए' SetWarnings' को बंद करने के लिए कोई प्रेरणा नहीं है। रेमो ने पहले ही यही कहा है। मैं अलग-अलग शब्दों का उपयोग बंद मौके पर कर रहा हूं, इससे किसी की मदद हो सकती है, और खुद को यह कहने का एक और मौका भी देने के लिए कि 'सेटवार्निंग' बंद न करें! – HansUp