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

JDBC ReadyedStatement के परिणामस्वरूप MySQL सिंटैक्स त्रुटि होती है

अधिकांश डेटाबेस में आप टेबल नामों जैसे ऑब्जेक्ट नामों को पैरामीट्रिज नहीं कर सकते हैं, MySQL में आप सैद्धांतिक रूप से MySQL कनेक्टर/जे के रूप में डिफ़ॉल्ट रूप से सर्वर साइड पैरामीटर का उपयोग नहीं करते हैं, बल्कि इसके बजाय यह सर्वर पर भेजने से पहले क्वेरी को फिर से लिखता है। हालांकि मान को उद्धृत स्ट्रिंग के रूप में डाला जाएगा, और ऑब्जेक्ट नाम उद्धृत स्ट्रिंग नहीं हो सकते हैं, इसलिए यह अभी भी काम नहीं करेगा।

तो INSERT INTO ? या SELECT ... FROM ? काम नहीं करेगा, क्योंकि यह INSERT INTO 'theTable' produces पैदा करता है या SELECT ... FROM 'theTable'

ऑब्जेक्ट नामों को वास्तविक क्वेरी का हिस्सा होना चाहिए। उनके लिए मापदंडों का उपयोग न करें। अधिकांश अन्य डेटाबेस (या उनके ड्राइवर) ने इस स्थिति में एक पैरामीटर रखने के लिए एक अपवाद फेंक दिया होगा।



  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 में बाइनरी लाइक ऑपरेशंस के लिए इंडेक्सिंग

  2. mysql डेटाबेस से कनेक्ट नहीं हो सकता [स्ट्रेटो]

  3. काम नहीं कर रहा में चुनें

  4. हाइबरनेट में वर्चर लौटने वाले एक MySQL फ़ंक्शन को कॉल करना

  5. पार्स त्रुटि:सिंटैक्स त्रुटि, अनपेक्षित (T_VARIABLE)