Junior — Middle
რა განსხვავებაა PreparedStatement და CallableStatement-ის გამოყენებას შორის მონაცემთა ბაზასთან მუშაობისას?
sobes.tech AI
პასუხი AI-სგან
Java-да දත්තසමුහ සමඟ වැඩ කිරීමේදී PreparedStatement සහ CallableStatement අතර මූලික වෙනස:
-
PreparedStatement යනු පෙර සකස් කළ SQL විමසුම් (සාමාන්යයෙන් SELECT, INSERT, UPDATE, DELETE) ක්රියාත්මක කිරීමට භාවිතා වේ. එය ආරක්ෂිතව පරාමිතීන් ඇතුල් කිරීමට හැකි වන අතර SQL ආක්රමණ වලින් ආරක්ෂා කරයි.
-
CallableStatement යනු දත්තසමුහයේ නිර්වචිත සුරක්ෂිත ක්රියාවන් හෝ ක්රමයන් කැඳවීමට අදාළ වේ. එය ඇතුල්වීමේ සහ පිටවීමේ පරාමිතීන් දෙකම සහය දක්වයි.
PreparedStatement භාවිතා කිරීමේ උදාහරණය:
String sql = "SELECT * FROM users WHERE id = ?";
PreparedStatement ps = connection.prepareStatement(sql);
ps.setInt(1, 10);
ResultSet rs = ps.executeQuery();
CallableStatement භාවිතා කිරීමේ උදාහරණය:
CallableStatement cs = connection.prepareCall("{call getUserById(?)}");
cs.setInt(1, 10);
ResultSet rs = cs.executeQuery();
ඒ අනුව, PreparedStatement සාමාන්ය පරාමිතීකරණ කළ විමසුම් සඳහා වන අතර, CallableStatement දත්තසමුහ ක්රියාවන් කැඳවීමට භාවිතා වේ.