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

mysql कमांड को कैसे निष्पादित करें DELIMITER

आप शायद नहीं सीमांकक बदलने की जरूरत है।

सीएलआई में डिलीमीटर की आवश्यकता होती है यह बताने के लिए कि एसक्यूएल स्टेटमेंट कहां समाप्त होता है, क्योंकि सीएलआई तब तक अधिक स्टेटमेंट पढ़ता और निष्पादित करता रहता है जब तक कि आप इसे रोकने के लिए नहीं कहते (उदाहरण के लिए, exit के साथ) या नियंत्रण-डी)। लेकिन यह वास्तव में जो पढ़ता है वह सिर्फ पात्रों की एक धारा है; इसे किसी भी तरह यह पता लगाने की जरूरत है कि एक कथन कहां समाप्त होता है और अगला शुरू होता है। यही सीमांकक करता है।

PHP में, प्रत्येक फ़ंक्शन कॉल एक कथन निष्पादित करता है। एक फ़ंक्शन कॉल में एकाधिक कथन नहीं हो सकते हैं, इसलिए उन्हें सीमित करने के तरीके की कोई आवश्यकता नहीं है। कथन संपूर्ण स्ट्रिंग है। यह पुराने mysql_query . के बारे में सच है साथ ही नया mysqli_query और पीडीओ। बेशक, mysqli_multi_query . है यदि आप वास्तव में एक से अधिक प्रश्नों को एक फ़ंक्शन में पास करना चाहते हैं।

एक संग्रहित प्रक्रिया/ट्रिगर/फ़ंक्शन/आदि के मामले में, कई कथन हो सकते हैं, लेकिन यह MySQL द्वारा ही नियंत्रित किया जाता है (और हमेशा ; होता है। , AFAIK)। जहाँ तक PHP का संबंध है, यह अभी भी एक ही कथन है।

phpMyAdmin में आप जो सीमांकक सेटिंग देख रहे हैं, उसका उपयोग शायद कथनों को अलग करने के लिए किया जा रहा है, और संभवतः PHP कोड में किया जा रहा है। इसे ऐसा करना है क्योंकि यह कई कथनों से युक्त उपयोगकर्ता इनपुट स्वीकार कर रहा है, लेकिन प्रति फ़ंक्शन कॉल में केवल एक कथन पास करना होगा। (मैंने इस बारे में पूरी तरह सुनिश्चित होने के लिए phpMyAdmin कोड की जांच नहीं की है)।



  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. कॉलम नाम प्राप्त करें जिसका एक पंक्ति में अधिकतम मान है sql

  3. नोड जेएस अतुल्यकालिक डेटाबेस कॉल

  4. PHP ड्रॉपडाउन में डिफ़ॉल्ट विकल्प सेट करें और सबमिट किए जाने पर क्वेरी को बनाए रखें

  5. MySql में DATETIME फ़ील्ड के दिनांक भाग पर कोई अनुक्रमणिका कैसे बनाता है?