sql स्टेटमेंट वैरिएबल को executeQuery
में पास करने की कोई आवश्यकता नहीं है PreparedStatement
. के लिए . आपके मामले में यही मुख्य मुद्दा है।
PreparedStatement preparedStatement = connection.prepareStatement(selectSQL);
preparedStatement.setString(1, lexiconType);
preparedStatement.setString(2, lemma);
// error is in the following statement
ResultSet rs = preparedStatement.executeQuery(selectSQL);
जैसा कि आप रीसेट कर रहे हैं निष्पादित किया जाने वाला एसक्यूएल, बयान तैयार बयान के रूप में मान्यता प्राप्त नहीं है बल्कि माता-पिता का एक उदाहरण है Statement
जो स्टिंग आदि के लिए उद्धरणों के बीच वैध इनपुट की तलाश में है जो मौजूद नहीं हैं। और इसलिए सिंटैक्स त्रुटि है।
बदलें :
ResultSet rs = preparedStatement.executeQuery(selectSQL);
प्रति :
ResultSet rs = preparedStatement.executeQuery();
और यह काम करना चाहिए।
संदर्भ लें :