Недавно один из моих коллег сделал комментарий, что я не должен использовать
LIKE '%' ||? || '%'
скорее использовать
LIKE?
в SQL, а затем заменить LIKE?маркер с LIKE '%' ||? || '%' , прежде чем я выполню SQL.Он отметил, что база данных DB2 с одним маркером параметров будет всегда кэшировать оператор и, таким образом, сокращать время подготовки SQL.
Однако я не уверен, является ли он точным или нет.Для меня это должно быть наоборот, так как мы выполняем больше обработки, заменяя строку в SQL каждый раз, когда выполняется запрос.
Кто-нибудь знает, действительно ли один маркер ускоряет выполнение?Просто к сведению - я использую среду 2.5 JDBC, а версия DB2 - 9.2.
Мой вопрос - DB2 относится к "НРАВИТСЯ?"в отличие от "LIKE '%' ||? || '%'" в отношении кэширования и подготовки.