Sobes.tech
Senior
45

Když děláš běžný SELECT, kolik dotazů posílá ovladač na Postgres? Jaké dotazy a co tam bude?

Společnosti byly požádány
СБК ПАРУС

Odpověď od AI

sobes.tech AI

При выполнении обычного SELECT через JDBC-драйвер к Postgres обычно отправляется один SQL-запрос — сам SELECT.

Процесс примерно такой:

  1. Клиент (приложение) отправляет один SQL-запрос на сервер Postgres.
  2. Сервер обрабатывает запрос, выполняет выборку данных.
  3. Сервер возвращает результат (набор строк) клиенту.

То есть драйвер не отправляет дополнительных запросов, если не используется что-то вроде подготовленных выражений с отдельной подготовкой или дополнительные метаданные. В простом случае это один запрос и один ответ с данными.

Если используется подготовленный запрос (PreparedStatement), то драйвер может сначала отправить запрос на подготовку (Parse), затем на выполнение (Execute), но это всё происходит в рамках одного логического запроса.

Пример:

SELECT id, name FROM users WHERE active = true;

Отправляется один запрос, возвращается набор строк с id и name активных пользователей.