Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

कोशिश-पकड़ का उपयोग करने से तेज़ी से डालने से पहले प्राथमिक कुंजी मान की जांच कर रहा है?

SQL 2008 पर, आप केवल MERGE का उपयोग कर सकते हैं - जो आपके किसी भी दृष्टिकोण से कहीं अधिक सरल है।

इसके अलावा मैं "मैं प्रदर्शन कारणों से लेनदेन का उपयोग नहीं करना चाहता" पर आपके साथ नहीं हूं - आपके द्वारा निष्पादित प्रत्येक डीएमएल कमांड वैसे भी कुछ लेनदेन का हिस्सा है, इसलिए लेनदेन हैं भले ही आप उन्हें स्पष्ट रूप से न खोलें। यदि आप प्रदर्शन समस्याओं का सामना कर रहे हैं, तो आप अधिक विवरण पोस्ट कर सकते हैं ताकि आपको प्रदर्शन में अधिक सहायता मिल सके।

संपादित करें:यदि आपको वास्तव में तेज़ आवेषण की आवश्यकता है, तो एक समय में एक पंक्ति सम्मिलित न करें। पंक्तियों के सेट जोड़ें, और MERGE का उपयोग करें - एक बार में पंक्तियों के बैचों को सम्मिलित करने से आपको जो लाभ मिलेगा, वह एक पंक्ति को जोड़ने की गति को अनुकूलित करने से प्राप्त होने वाले किसी भी छोटे सुधार से कहीं अधिक महत्वपूर्ण होना चाहिए।

वैसे भी, डेटाबेस से संबंधित किसी भी चीज़ के बारे में सैद्धांतिक तर्क आमतौर पर पर्याप्त नहीं होता है। तेज़ क्या है यह निर्धारित करने के लिए आपको वास्तव में बेंचमार्क करने की आवश्यकता है। जिसे आप "मौजूदा लाइन के लिए अनावश्यक रूप से क्वेरी" कह रहे हैं, वह पूरी तरह से नगण्य हो सकता है, और जब तक आप इसे वास्तविक परिस्थितियों में माप नहीं लेते हैं, तब तक आप नहीं जानते कि क्या यह मामला है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. स्ट्रिंग को अलग-अलग कॉलम में कैसे अलग करें?

  2. SqlServer:उपयोगकर्ता के लिए लॉगिन विफल रहा

  3. ExecuteNonQuery का उपयोग कर SQL सर्वर में प्रभावित पंक्तियों को ओवरराइड करना?

  4. SQL सर्वर 2005 में श्रेणीबद्ध क्वेरीज़

  5. SQL सर्वर में डेटाबेस में सभी तालिकाओं के लिए कॉलम विवरण जोड़ें कैसे उत्पन्न करें - SQL सर्वर / टी-एसक्यूएल ट्यूटोरियल भाग 49