MySQL 5.7 और MySQL 8, दोनों में BEGIN और END टी-एसक्यूएल के समान है और सी, जावा, सी#, आदि में कर्ली-ब्रेसिज़ की तरह "कंपाउंड स्टेटमेंट" को "कोड का एक ब्लॉक" के रूप में भी जाना जाता है।
- MySQL 5.7:https://dev.mysql .com/doc/refman/5.7/hi/begin-end.html
- MySQL 8.0:https://dev.mysql .com/doc/refman/8.0/hi/begin-end.html
हालांकि, BEGIN कीवर्ड यह भी है (भ्रामक ढंग से) BEGIN WORK . के लिए एक उपनाम के रूप में अतिभारित और START TRANSACTION
, और उनके शब्दार्थ इस बात पर निर्भर करते हैं कि उनका उपयोग किसी संग्रहीत प्रोग्राम के अंदर किया जा रहा है या नहीं:
तो:
START TRANSACTION- हमेशा एक लेन-देन शुरू करता है। आपको यह वाक्य रचना पसंद करनी चाहिए।
BEGIN:- यदि आप किसी संग्रहीत कार्यविधि, फ़ंक्शन, ट्रिगर या ईवेंट में हैं, तो
BEGINअपने आप में एक यौगिक कथन की शुरुआत का प्रतीक है। आप केवलSTART TRANSACTION. का उपयोग कर सकते हैं लेन-देन शुरू करने के लिए। - यदि आप सीधे MySQL के विरुद्ध SQL निष्पादित कर रहे हैं, तो यह एक लेन-देन भी शुरू करता है (जैसा कि इसे
BEGIN WORKके रूप में समझा जाता है) ) लेकिन इसका इस तरह से उपयोग करना मूर्खतापूर्ण और भ्रमित करने वाला है, इसलिए इससे बचें।
- यदि आप किसी संग्रहीत कार्यविधि, फ़ंक्शन, ट्रिगर या ईवेंट में हैं, तो
BEGIN WORK:- यह
START TRANSACTION. के लिए एक उपनाम है . मैं भ्रम को रोकने के लिए इसका पूरी तरह से उपयोग करने से बचूंगा।
- यह