Базы данных имеют кеш запросов, что означает, что при выполнении запроса база данных кэширует запрос синтаксический анализ / скомпилированный и, возможно, план запроса для исключения будущих вычислений.
Подготовленные операторы обычно сначала кэшируются на уровне приложения, где контейнер приложения отвечает за управление кэшем операторов. Большинство контейнеров приложений имеют опции для управления кэшем подготовленных операторов (например: glassfish ).
Как вы можете видеть здесь , основное отличие такое, как вы заявили: с подготовленными утверждениями приложение снижает стоимость составления одного и того же утверждения снова и снова. Напомним, что для большинства контейнеров приложений оператор должен быть точно таким же (включая пробелы) для правильного повторного использования, поэтому будьте осторожны при использовании рукописных запросов.