[jOOQ/jOOQ#14357] Use ? as parameter marker on MySQL, MariaDB when using
R2DBC
This commit is contained in:
parent
2eca7a83bd
commit
3cdbc6abaa
@ -764,7 +764,11 @@ final class R2DBC {
|
||||
setParamType(configuration.dialect(), s)
|
||||
), null);
|
||||
|
||||
return new Rendered(render.paramType(NAMED).visit(query).render(), render.bindValues(), render.skipUpdateCounts());
|
||||
return new Rendered(
|
||||
render.paramType(render.settings().getParamType()).visit(query).render(),
|
||||
render.bindValues(),
|
||||
render.skipUpdateCounts()
|
||||
);
|
||||
}
|
||||
|
||||
static final long addNoOverflow(long x, long y) {
|
||||
@ -1416,15 +1420,16 @@ final class R2DBC {
|
||||
|
||||
static final Settings setParamType(SQLDialect dialect, Settings settings) {
|
||||
switch (dialect.family()) {
|
||||
|
||||
// [#14357] While Oracle style :x markers seem to work mostly,
|
||||
// there's a bug in r2dbc-mariadb that produces syntax
|
||||
// errors in rare cases.
|
||||
case MYSQL:
|
||||
return settings
|
||||
.withParamType(NAMED)
|
||||
.withRenderNamedParamPrefix("?p")
|
||||
.withParseNamedParamPrefix("?p");
|
||||
|
||||
case MARIADB:
|
||||
return settings;
|
||||
|
||||
|
||||
|
||||
return settings.withParamType(NAMED);
|
||||
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user