Compile a view definition into the SELECT statement that forms the view body.
buildSelectQuery() returns parameterized SQL, but a CREATE VIEW cannot carry
bind parameters — the definition is stored in the catalog, so its values must
be literals. The bound values are therefore folded back in through the
dialect's own replaceReplacements(), which escapes each one and skips
placeholders inside string literals. Values still never reach the SQL by
concatenation; they are escaped by the same code path that guards
prorm.query() replacements.
Compile a view definition into the SELECT statement that forms the view body.
buildSelectQuery()returns parameterized SQL, but a CREATE VIEW cannot carry bind parameters — the definition is stored in the catalog, so its values must be literals. The bound values are therefore folded back in through the dialect's ownreplaceReplacements(), which escapes each one and skips placeholders inside string literals. Values still never reach the SQL by concatenation; they are escaped by the same code path that guardsprorm.query()replacements.