v8cs:ql-constants-in-binary-operation¶
В запросе в бинарной операции используются константные значения или параметры. (ql-constants-in-binary-operation)¶
- Категория:
ql
Запрещается формировать строку шаблона при помощи вычислений, использовать конкатенацию строк средствами языка запросов.
Данное требование продиктовано необходимостью переносимости прикладных решений на различные СУБД.
Неправильно¶
ВЫБРАТЬ
Номенклатура.Наименование КАК Наименование,
"Мой" + "Товар" КАК КодАртикул
ИЗ
Справочник.Номенклатура КАК Номенклатура;
ВЫБРАТЬ
Номенклатура.Наименование КАК Наименование,
"Мой" + &Параметр КАК КодАртикул
ИЗ
Справочник.Номенклатура КАК Номенклатура
ВЫБРАТЬ
Номенклатура.Наименование КАК Наименование,
ИмяПоля КАК КодАртикул
ИЗ
Справочник.Номенклатура КАК Номенклатура
ГДЕ
ИмяПоля ПОДОБНО "123" + "%";
Правильно¶
ВЫБРАТЬ
Номенклатура.Наименование КАК Наименование,
"МойТовар" КАК КодАртикул
ИЗ
Справочник.Номенклатура КАК Номенклатура;
ВЫБРАТЬ
Номенклатура.Наименование КАК Наименование,
&Параметр КАК КодАртикул
ИЗ
Справочник.Номенклатура КАК Номенклатура
ВЫБРАТЬ
Номенклатура.Наименование КАК Наименование,
ИмяПоля КАК КодАртикул
ИЗ
Справочник.Номенклатура КАК Номенклатура
ГДЕ
ИмяПоля ПОДОБНО "123%";
См.¶
Соответствие стандартам¶
- #std726, п. 1: Особенности использования в запросах оператора ПОДОБНО — Диагностика v8cs:ql-constants-in-binary-operation проверяет требование пункта 1 стандарта std726. Примечание: Пункт подтверждает запрет вычислять шаблон ПОДОБНО; реализация диагностики шире и проверяет любые бинарные операции двух литералов.
Источник диагностики¶
- Исходная статья
- Ревизия:
c8fe7932babf718c0ace3cf836a99d6a3b98d098 - Лицензия:
EPL-2.0