В чем польза для использования выполнения по запросу в MySQL2?MySql

Форум по Mysql
Ответить
Anonymous
 В чем польза для использования выполнения по запросу в MySQL2?

Сообщение Anonymous »

При использовании библиотеки Nodejs mysql2 я пытаюсь понять различия между connection.execute и connection.query.
Как я понимаю, запрос готовит оператор локально, а затем делает один вызов в базу данных. Выполнить отправляет запрос без параметров в подготовленную базу данных, а затем отправляет параметры отдельно для выполнения с подготовленным оператором. Оператор кэшируется при использовании connection.execute . Имеет ли вызов connection.execute два раза в строке с одним и тем же запросом? улучшение производительности.
Однако в функции B2 < /code>, оператор повторно используется, или в базе данных делается четыре отдельных сетевых вызова? В случае повторного использования оператора в B2 , будет ли B3 самым быстрым вариантом? >async function B1(connection) {
const statement = await connection.prepare("SELECT 1 + ? + ?");
const result1 = await statement.execute([1, 2]);
const result2 = await statement.execute([3, 4]);
await statement.close();
return [result1, result2];
}

async function B2(connection) {
const result1 = await connection.execute("SELECT 1 + ? + ?", [1, 2]);
const result2 = await connection.execute("SELECT 1 + ? + ?", [3, 4]);
return [result1, result2];
}

async function B3(connection) {
const result1 = await connection.query("SELECT 1 + ? + ?", [1, 2]);
const result2 = await connection.query("SELECT 1 + ? + ?", [3, 4]);
return [result1, result2];
}


Подробнее здесь: https://stackoverflow.com/questions/794 ... -in-mysql2
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»