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

पीडीओ:एक MySQL फ़ंक्शन को बाइंडवैल्यू/बाइंडपरम में पास करें

नहीं। एक क्वेरी पैरामीटर केवल एक स्थिर मान के लिए स्थानापन्न करता है। उदाहरण के लिए, एक संख्यात्मक स्थिरांक या शाब्दिक स्ट्रिंग या दिनांक।

कुछ और - कॉलम नाम, टेबल नाम, एसक्यूएल कीवर्ड, फ़ंक्शन, एक्सप्रेशन - पार्स समय पर SQL स्ट्रिंग में होना चाहिए।

अपनी टिप्पणी दें:

आपको समझना चाहिए कि पैरामीटर नहीं हैं अपने एसक्यूएल में अतिरिक्त तारों को इंटरपोलेट करने की सुविधा। PREPARE जावा या C# के लिए एक कंपाइल चरण के अनुरूप है, जबकि EXECUTE संकलित कोड को चलाने के समान है।

तैयारी का समय तब होता है जब RDBMS सिंटैक्स जाँच करता है, और संदर्भों का सत्यापन भी करता है। यदि आप किसी ऐसी तालिका का नाम देते हैं जो मौजूद नहीं है, या किसी ऐसे फ़ंक्शन का आह्वान करते हैं जो मौजूद नहीं है, तो उसे एक त्रुटि देनी होगी।

आप टेबल नाम या फ़ंक्शन कॉल को पैरामीटर के रूप में पास नहीं कर सकते क्योंकि तब आरडीबीएमएस तैयार समय पर उन संदर्भों को सत्यापित करने में सक्षम नहीं होगा। आपको कथन के सिंटैक्स को बदलने, या अमान्य तालिकाओं या कार्यों को पेश करने के लिए क्वेरी पैरामीटर का उपयोग करने में सक्षम नहीं होना चाहिए।

तो पैरामीटर प्लेसहोल्डर एक इरेड्यूसेबल वाक्य-विन्यास तत्व होना चाहिए जो कभी भी अमान्य संदर्भ न हो, यानी एक एकल शाब्दिक मान - एक संख्या या एक स्ट्रिंग।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. './mysql/user.MYD' नहीं मिला (त्रुटि:2 - ऐसी कोई फ़ाइल या निर्देशिका नहीं)

  2. पायथन में MySQLdb मॉड्यूल आयात नहीं कर सकता

  3. डेटाबेस - एक इवेंट टेबल डिजाइन करना

  4. MySQL:दिनांक सीमा को नई पंक्तियों में विस्तृत करें

  5. PHP में मैसकल पंक्तियों के माध्यम से पुनरावृति