execute
для обычного выражения, executeUpdate
для модифицирующего, executeBatch
для пакетного. Когда ожидаемый размер результата больше Integer.MAX_VALUE
, используются версии методов executeLarge*
.После выполнения, экземпляр
Statement
владеет ResultSet-ом, и другими данными о результате выполнения, такими как количество обновленных записей и сгенерированные ключи.PreparedStatement – предскомпилированная версия
Statement
, его наследник. Эффективнее выполняет одно и то же выражение множество раз. Входные параметры объявляются в SQL-выражении символом ?
, следом сеттерами задаются их типы и значения. Делегирует обязанность экранировать введенные пользователем параметры базе данных.CallableStatement – наследник
PreparedStatement
для вызова хранимых процедур. Кроме входных параметров, позволяет регистрировать выходные.Экземпляры всех трех типов создаются методами интерфейса
Connection
.