конкатенация в аргументе оператора do не работает - PullRequest
0 голосов
/ 11 января 2019

конкатенация в do не работает

Может ли кто-нибудь объяснить, почему
этот код работает:

do 'begin perform 2;  end;';  

лучше сказать, не генерирует ошибок и это:

do 'begin perform '||'2'||';  end;';

генерировать

ОШИБКА: синтаксическая ошибка в или около "||"
ЛИНИЯ 1: начинайте выполнять || '2' || '; конец; ';

1 Ответ

0 голосов
/ 11 января 2019

Аргумент DO должен быть строковым литералом.

Из руководства :

Параметры (...) code (...) Это должно быть указано как строковый литерал (...)

Строка конкатенации выражений не является литералом.

...