From 0977fccd6d99813acedb2f6863ff3ff46e193478 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Mon, 17 Dec 2012 20:49:42 +0100 Subject: [PATCH] [#2001] Named Params are treated as null literals on right sides of comparisons --- .../jooq/test/_/testcases/GeneralTests.java | 2 - .../src/main/resources/manual-3.0.xml | 1 + jOOQ/src/main/java/org/jooq/Field.java | 27 -------- .../java/org/jooq/impl/AbstractField.java | 7 +- .../java/org/jooq/impl/AbstractFunction.java | 5 -- .../java/org/jooq/impl/ArrayConstant.java | 5 -- .../org/jooq/impl/CaseConditionStepImpl.java | 5 -- .../java/org/jooq/impl/CaseWhenStepImpl.java | 5 -- jOOQ/src/main/java/org/jooq/impl/Cast.java | 5 -- .../java/org/jooq/impl/CompareCondition.java | 21 +----- .../main/java/org/jooq/impl/CustomField.java | 10 --- jOOQ/src/main/java/org/jooq/impl/Decode.java | 4 +- .../main/java/org/jooq/impl/Expression.java | 5 -- jOOQ/src/main/java/org/jooq/impl/Factory.java | 12 ++-- .../main/java/org/jooq/impl/FieldAlias.java | 5 -- .../src/main/java/org/jooq/impl/Function.java | 5 -- jOOQ/src/main/java/org/jooq/impl/IsNull.java | 67 +++++++++++++++++++ jOOQ/src/main/java/org/jooq/impl/Neg.java | 5 -- .../java/org/jooq/impl/QualifiedField.java | 5 -- .../src/main/java/org/jooq/impl/SQLField.java | 5 -- .../org/jooq/impl/SelectQueryAsField.java | 5 -- .../java/org/jooq/impl/TableFieldImpl.java | 5 -- .../main/java/org/jooq/impl/UDTConstant.java | 5 -- .../main/java/org/jooq/impl/UDTFieldImpl.java | 5 -- jOOQ/src/main/java/org/jooq/impl/Val.java | 5 -- 25 files changed, 81 insertions(+), 150 deletions(-) create mode 100644 jOOQ/src/main/java/org/jooq/impl/IsNull.java diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/GeneralTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/GeneralTests.java index 204fd2fdcd..444a472a75 100644 --- a/jOOQ-test/src/org/jooq/test/_/testcases/GeneralTests.java +++ b/jOOQ-test/src/org/jooq/test/_/testcases/GeneralTests.java @@ -364,9 +364,7 @@ extends BaseTest n : asList(n1, n2)) { assertEquals(null, create().select(n).fetchOne(n)); assertEquals(Integer.valueOf(1), create().select(c).from(TAuthor()).where(TAuthor_ID().equal(1)).and(n.isNull()).fetchOne(c)); - assertEquals(Integer.valueOf(1), create().select(c).from(TAuthor()).where(TAuthor_ID().equal(1)).and(n.equal(n)).fetchOne(c)); assertEquals(null, create().selectOne().from(TAuthor()).where(n.isNotNull()).fetchAny()); - assertEquals(null, create().selectOne().from(TAuthor()).where(n.notEqual(n)).fetchAny()); } UpdateQuery u = create().updateQuery(TAuthor()); diff --git a/jOOQ-website/src/main/resources/manual-3.0.xml b/jOOQ-website/src/main/resources/manual-3.0.xml index 5bf285ee45..4a7d331d5d 100644 --- a/jOOQ-website/src/main/resources/manual-3.0.xml +++ b/jOOQ-website/src/main/resources/manual-3.0.xml @@ -9164,6 +9164,7 @@ for (Record record : create().select(

GroupField

? extends T has been relaxed, e.g. for casting, Field.getType(), etc.

Ant task removed

+

#2001 eq/equal(null) and ne/notEqual(null) now work as in SQL

Object renames