[jOOQ/jOOQ#9263] Revert change in ConditionAsField
This commit is contained in:
parent
292605a12f
commit
ced4f41703
@ -39,11 +39,9 @@ package org.jooq.impl;
|
||||
|
||||
import static org.jooq.impl.DSL.inline;
|
||||
import static org.jooq.impl.DSL.not;
|
||||
import static org.jooq.impl.SQLDataType.BOOLEAN;
|
||||
|
||||
import org.jooq.Condition;
|
||||
import org.jooq.Context;
|
||||
import org.jooq.DataType;
|
||||
|
||||
/**
|
||||
* @author Lukas Eder
|
||||
@ -57,11 +55,7 @@ final class ConditionAsField extends AbstractField<Boolean> {
|
||||
final Condition condition;
|
||||
|
||||
ConditionAsField(Condition condition) {
|
||||
this(condition, BOOLEAN);
|
||||
}
|
||||
|
||||
ConditionAsField(Condition condition, DataType<Boolean> dataType) {
|
||||
super(DSL.name(condition.toString()), dataType);
|
||||
super(DSL.name(condition.toString()), SQLDataType.BOOLEAN);
|
||||
|
||||
this.condition = condition;
|
||||
}
|
||||
@ -86,9 +80,9 @@ final class ConditionAsField extends AbstractField<Boolean> {
|
||||
case FIREBIRD:
|
||||
|
||||
// [#3206] Correct implementation of three-valued logic is important here
|
||||
ctx.visit(DSL.when(condition, inline(true, getDataType()))
|
||||
.when(not(condition), inline(false, getDataType()))
|
||||
.otherwise(inline((Boolean) null, getDataType())));
|
||||
ctx.visit(DSL.when(condition, inline(true))
|
||||
.when(not(condition), inline(false))
|
||||
.otherwise(inline((Boolean) null)));
|
||||
break;
|
||||
|
||||
// These databases can inline predicates in column expression contexts
|
||||
|
||||
@ -42,6 +42,7 @@ import static org.jooq.Clause.CONDITION_NOT;
|
||||
import static org.jooq.impl.DSL.condition;
|
||||
import static org.jooq.impl.DSL.not;
|
||||
import static org.jooq.impl.Keywords.K_NOT;
|
||||
import static org.jooq.impl.SQLDataType.BOOLEAN;
|
||||
|
||||
import org.jooq.Clause;
|
||||
import org.jooq.Context;
|
||||
@ -55,7 +56,7 @@ final class NotField extends AbstractField<Boolean> {
|
||||
private final Field<Boolean> field;
|
||||
|
||||
NotField(Field<Boolean> field) {
|
||||
super(DSL.name("not"), field.getDataType());
|
||||
super(DSL.name("not"), BOOLEAN);
|
||||
this.field = field;
|
||||
}
|
||||
|
||||
@ -78,7 +79,7 @@ final class NotField extends AbstractField<Boolean> {
|
||||
|
||||
|
||||
|
||||
ctx.visit(new ConditionAsField(not(condition(field)), field.getDataType()));
|
||||
ctx.visit(DSL.field(not(condition(field))));
|
||||
break;
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user