Должны ли все параметры в подготовленном выражении всегда использовать заполнители? - PullRequest
0 голосов
/ 30 января 2019

Я пытался найти что-то, что так или иначе говорит мне о том, как написать подготовленное утверждение, когда параметр статичен.Должны ли все параметры всегда использовать заполнители, даже если значение всегда одинаково? SELECT * FROM student WHERE admission_status = 'Pending' AND gpa BETWEEN ? AND ? т.е. в этом примере admission_status никогда не будет ничем иным, как 'Pending', но gpa будет меняться в зависимости от ввода пользователя или различных вызовов методов.

Я знаю, что это не лучший пример, ноПричина, по которой я спрашиваю, заключается в том, что я обнаружил заметную разницу в скорости выполнения при замене всех статических параметров, которые используют заполнитель на его статическое значение в запросах длиной в сотни строк.

Допустимо ли это делать?Или это идет вразрез со стандартами использования подготовленного заявления?Я хотел бы узнать, так или иначе, прежде чем я начну «оптимизировать» более крупные запросы, протестировав новые индексы и заменив? На значения, чтобы увидеть, есть ли увеличение скорости выполнения.

...