PreparedStatement का उपयोग करें . इस तरह आप एक प्लेसहोल्डर को नामांकित करते हैं और JDBC ड्राइवर डेटाबेस को स्टेटमेंट, साथ ही पैरामीटर को तर्क के रूप में भेजकर इसे सही ढंग से निष्पादित करेगा।
String updateStatement =
"update " + dbName + ".COFFEES " +
"set TOTAL = TOTAL + ? " +
"where COF_NAME = ?";
PreparedStatement updateTotal = con.prepareStatement(updateStatement);
updateTotal.setInt(1, e.getValue().intValue());
updateTotal.setString(2, e.getKey());
ऊपर दिए गए प्रश्न चिह्न प्लेसहोल्डर का प्रतिनिधित्व करते हैं।
चूंकि ये मान पैरामीटर के रूप में पारित हो जाते हैं, इसलिए आपको उद्धरण देने में कोई समस्या नहीं होती है, और यह आपको SQL से बचाता है। इंजेक्शन भी।