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

BEGIN के अंदर ट्रांजेक्शन शुरू करें ... END संदर्भ या बाहर और LOOP सिंटैक्स

  1. नहीं:कंपाउंड स्टेटमेंट का उपयोग केवल संग्रहीत कार्यक्रमों के मुख्य भाग के भीतर ही किया जा सकता है।

  2. START TRANSACTION; और COMMIT; अलग बयान हैं। यदि आप चाहते हैं कि किसी संग्रहीत प्रोग्राम के मुख्य भाग में कई कथन हों, तो उसे उन कथनों को किसी प्रकार के यौगिक कथन ब्लॉक में संलग्न करना होगा जैसे कि BEGIN ... END (जो ब्रेसिज़ { ... } . में स्टेटमेंट के ब्लॉक को एनक्लोज़ करने के समान है सी-जैसी भाषा के भीतर)।

    उस ने कहा, आप कर सकते थे एक संग्रहीत प्रोग्राम है जिसमें केवल एकल-कथन है START TRANSACTION; या COMMIT; —इस तरह के कार्यक्रम के लिए किसी कंपाउंड स्टेटमेंट ब्लॉक की आवश्यकता नहीं होगी और यह केवल एक नया शुरू करेगा / वर्तमान लेनदेन करेगा।

    एक संग्रहीत प्रोग्राम के बाहर, जहां कंपाउंड स्टेटमेंट ब्लॉक की अनुमति नहीं है, आप START TRANSACTION; जारी कर सकते हैं और COMMIT; आवश्यकता पड़ने पर बयान।

  3. LOOP एक कंपाउंड स्टेटमेंट ब्लॉक भी है, जो केवल एक संग्रहित प्रक्रिया के भीतर ही मान्य है। यह आवश्यक नहीं है एक LOOP संलग्न करने के लिए BEGIN ... END . के अंदर ब्लॉक करें ब्लॉक, हालांकि यह सामान्य है (अन्यथा किसी भी आवश्यक लूप इनिशियलाइज़ेशन को करना मुश्किल है)।

आपके मामले में, जहां आप स्पष्ट रूप से लूपिंग निर्माण से तालिका में डेटा सम्मिलित करना चाहते हैं, आपको या तो निम्न की आवश्यकता होगी:

  • एक संग्रहीत प्रोग्राम को परिभाषित करें जिसमें आप LOOP का उपयोग करते हैं;

  • एक बाहरी प्रोग्राम में एक लूप को पुनरावृत्त करें जो प्रत्येक पुनरावृत्ति पर डेटाबेस प्रश्नों को निष्पादित करता है; या

  • सेट के संदर्भ में अपने तर्क को फिर से परिभाषित करें जिस पर SQL सीधे काम कर सकता है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ClusterControl के साथ HAProxy मेट्रिक्स की निगरानी कैसे करें

  2. PHP/अपाचे:PHP घातक त्रुटि:अपरिभाषित फ़ंक्शन पर कॉल करें mysql_connect ()

  3. माइग्रेशन विधि नहीं मिल सकी:up

  4. रीडायरेक्ट - <मेटा http-equiv='refresh' /> का विकल्प?

  5. MySQL IN LIKE . के साथ