Junior — Middle
Koja je razlika između korišćenja jednostavnog Statement i pripremljenog PreparedStatement za izvršavanje SQL upita u JDBC?
sobes.tech АИ
Одговор од АИ
Основне разлике између Statement и PreparedStatement у JDBC-у:
- Statement се користи за извршавање једноставних SQL упита без параметара. Упит се формулише као низ и шаље на извршење.
- PreparedStatement омогућава креирање параметризованих упита са замениоцима (на пример,
?), који се безбедно попуњавају вредностима.
Предности PreparedStatement:
- Безбедност: спречава SQL инјекције правилним екранирањем параметара.
- Перформансе: упит се једном компилира и може се више пута извршавати са различитим параметрима.
- Удобност: олакшава рад са динамичким подацима.
Пример коришћења PreparedStatement:
String sql = "SELECT * FROM users WHERE id = ?";
PreparedStatement ps = connection.prepareStatement(sql);
ps.setInt(1, 10);
ResultSet rs = ps.executeQuery();
Док Statement захтева конкатенацију стрингова, што није безбедно и мање је ефикасно.