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

mysqli_stmt::bind_param() - प्रत्येक पैरामीटर के लिए s के अलावा कोई अन्य डेटा प्रकार निर्दिष्ट करें

केवल एक बार मैंने पाया है कि एक पूर्णांक पैरामीटर का उपयोग करना महत्वपूर्ण है LIMIT . में है खंड।

SELECT
...
LIMIT ?, ?

MySQL इस संदर्भ में उद्धृत स्ट्रिंग अक्षर को स्वीकार नहीं करता है, और स्ट्रिंग प्रकार के साथ पैरामीटर स्वीकार नहीं करता है। आपको एक पूर्णांक का उपयोग करना होगा।

देखें पैरामीट्रिज्ड पीडीओ क्वेरी और `LIMIT` क्लॉज - काम नहीं कर रहा है इस पर मेरे परीक्षणों के लिए। यह पीडीओ के बारे में एक सवाल था, और मैंने mysqli का परीक्षण नहीं किया, लेकिन मेरा मानना ​​​​है कि इस मामले में पूर्णांक पैरामीटर का उपयोग करने के लिए यह सर्वर-साइड MySQL आवश्यकता है। तो यह mysqli पर भी लागू होना चाहिए।

अन्य सभी मामलों (AFAIK) में, MySQL स्ट्रिंग में प्रमुख अंकों को पढ़कर और किसी भी निम्नलिखित वर्णों को अनदेखा करके स्ट्रिंग्स को पूर्णांक में बदलने में सक्षम है।

@Dharman नीचे एक टिप्पणी में ORDER BY में पूर्णांकों के लिए MySQL के समर्थन का संदर्भ देता है :

SELECT
...
ORDER BY ?

ORDER BY . में एक पूर्णांक उस स्थिति में कॉलम के आधार पर छाँटने का मतलब है, संख्या के स्थिर मान से नहीं:

SELECT
...
ORDER BY 1 -- sorts by the 1st column

लेकिन उस संख्या वाले समकक्ष स्ट्रिंग मान समान कार्य नहीं करता है। यह स्ट्रिंग के निरंतर मान के आधार पर छाँटता है, जिसका अर्थ है कि प्रत्येक पंक्ति बंधी हुई है, और क्रमबद्ध क्रम मनमाना होगा।

SELECT
...
ORDER BY '1' -- sorts by a constant value, so all rows are tied

इसलिए यह एक और मामला है जहां क्वेरी पैरामीटर के लिए डेटा प्रकार महत्वपूर्ण है।

दूसरी ओर, ORDER BY में उस स्थिति में कॉलम द्वारा क्रमबद्ध करने के लिए क्रमिक संख्याओं का उपयोग करना या GROUP BY बहिष्कृत है, और हमें 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. कैसे VB.net में हम SQL के लिए स्ट्रिंग को एनकोड कर सकते हैं

  2. स्थानीय नेटवर्क पर MySQL डेटाबेस से कनेक्ट करें

  3. मुझे तैयार कथन के लिए सिंटैक्स त्रुटि क्यों मिलती है?

  4. mySQL में किसी विशिष्ट वर्ण के बाएँ और दाएँ से केवल वर्ण लेना

  5. MySQL शो टेबल स्टेटस, ऑटो इंक्रीमेंट सही नहीं है