From a50e59f447efe27bcd0895b9c3ed0779137085c5 Mon Sep 17 00:00:00 2001 From: Jens Schauder Date: Tue, 16 Jul 2019 07:16:11 +0200 Subject: [PATCH 1/2] DATAJDBC-394 - Prepare branch --- pom.xml | 2 +- spring-data-jdbc-distribution/pom.xml | 2 +- spring-data-jdbc/pom.xml | 4 ++-- spring-data-relational/pom.xml | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index 2220303342..0fc67b3f2b 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ org.springframework.data spring-data-relational-parent - 1.1.0.BUILD-SNAPSHOT + 1.1.0.DATAJDBC-394-SNAPSHOT pom Spring Data Relational Parent diff --git a/spring-data-jdbc-distribution/pom.xml b/spring-data-jdbc-distribution/pom.xml index 71b9a3c782..c1196de432 100644 --- a/spring-data-jdbc-distribution/pom.xml +++ b/spring-data-jdbc-distribution/pom.xml @@ -14,7 +14,7 @@ org.springframework.data spring-data-relational-parent - 1.1.0.BUILD-SNAPSHOT + 1.1.0.DATAJDBC-394-SNAPSHOT ../pom.xml diff --git a/spring-data-jdbc/pom.xml b/spring-data-jdbc/pom.xml index d33566bc88..436362fca0 100644 --- a/spring-data-jdbc/pom.xml +++ b/spring-data-jdbc/pom.xml @@ -5,7 +5,7 @@ 4.0.0 spring-data-jdbc - 1.1.0.BUILD-SNAPSHOT + 1.1.0.DATAJDBC-394-SNAPSHOT Spring Data JDBC Spring Data module for JDBC repositories. @@ -14,7 +14,7 @@ org.springframework.data spring-data-relational-parent - 1.1.0.BUILD-SNAPSHOT + 1.1.0.DATAJDBC-394-SNAPSHOT diff --git a/spring-data-relational/pom.xml b/spring-data-relational/pom.xml index fa7f2f4873..ee03acf9d2 100644 --- a/spring-data-relational/pom.xml +++ b/spring-data-relational/pom.xml @@ -5,7 +5,7 @@ 4.0.0 spring-data-relational - 1.1.0.BUILD-SNAPSHOT + 1.1.0.DATAJDBC-394-SNAPSHOT Spring Data Relational Spring Data Relational support @@ -13,7 +13,7 @@ org.springframework.data spring-data-relational-parent - 1.1.0.BUILD-SNAPSHOT + 1.1.0.DATAJDBC-394-SNAPSHOT From 4413a8938b786e4bf0bbc01cbe1d465c5589ad98 Mon Sep 17 00:00:00 2001 From: Jens Schauder Date: Tue, 16 Jul 2019 07:51:29 +0200 Subject: [PATCH 2/2] DATAJDBC-394 - Don't use AS for table aliases. The AS keyword for table aliases is optional for all databases that support it. It is not supported by Oracle. Thus not using it makes the generated SQL compatible to more databases. --- .../relational/core/sql/render/FromTableVisitor.java | 2 +- .../core/sql/render/DeleteRendererUnitTests.java | 2 +- .../core/sql/render/SelectRendererUnitTests.java | 9 +++++---- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/spring-data-relational/src/main/java/org/springframework/data/relational/core/sql/render/FromTableVisitor.java b/spring-data-relational/src/main/java/org/springframework/data/relational/core/sql/render/FromTableVisitor.java index 17fe1d60ad..cadf58cf21 100644 --- a/spring-data-relational/src/main/java/org/springframework/data/relational/core/sql/render/FromTableVisitor.java +++ b/spring-data-relational/src/main/java/org/springframework/data/relational/core/sql/render/FromTableVisitor.java @@ -49,7 +49,7 @@ Delegation enterMatched(Table segment) { builder.append(context.getNamingStrategy().getName(segment)); if (segment instanceof Aliased) { - builder.append(" AS ").append(((Aliased) segment).getAlias()); + builder.append(" ").append(((Aliased) segment).getAlias()); } parent.onRendered(builder); diff --git a/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/render/DeleteRendererUnitTests.java b/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/render/DeleteRendererUnitTests.java index 6d93a9a929..3eea4f2600 100644 --- a/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/render/DeleteRendererUnitTests.java +++ b/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/render/DeleteRendererUnitTests.java @@ -60,6 +60,6 @@ public void shouldConsiderTableAlias() { .where(table.column("foo").isEqualTo(table.column("baz"))) // .build(); - assertThat(SqlRenderer.toString(delete)).isEqualTo("DELETE FROM bar AS my_bar WHERE my_bar.foo = my_bar.baz"); + assertThat(SqlRenderer.toString(delete)).isEqualTo("DELETE FROM bar my_bar WHERE my_bar.foo = my_bar.baz"); } } diff --git a/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/render/SelectRendererUnitTests.java b/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/render/SelectRendererUnitTests.java index d6b8b4e710..c81a6b510b 100644 --- a/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/render/SelectRendererUnitTests.java +++ b/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/render/SelectRendererUnitTests.java @@ -55,7 +55,7 @@ public void shouldRenderAliasedColumnAndFrom() { Select select = Select.builder().select(table.column("foo").as("my_foo")).from(table).build(); - assertThat(SqlRenderer.toString(select)).isEqualTo("SELECT my_bar.foo AS my_foo FROM bar AS my_bar"); + assertThat(SqlRenderer.toString(select)).isEqualTo("SELECT my_bar.foo AS my_foo FROM bar my_bar"); } @Test // DATAJDBC-309 @@ -163,8 +163,9 @@ public void shouldRenderMultipleJoinWithAnd() { .join(tenant).on(tenant.column("tenant_id")).equals(department.column("tenant")) // .build(); - assertThat(SqlRenderer.toString(select)).isEqualTo("SELECT employee.id, department.name FROM employee " - + "JOIN department ON employee.department_id = department.id " + "AND employee.tenant = department.tenant " + assertThat(SqlRenderer.toString(select)).isEqualTo("SELECT employee.id, department.name FROM employee " // + + "JOIN department ON employee.department_id = department.id " // + + "AND employee.tenant = department.tenant " // + "JOIN tenant AS tenant_base ON tenant_base.tenant_id = department.tenant"); } @@ -177,7 +178,7 @@ public void shouldRenderOrderByName() { Select select = Select.builder().select(column).from(employee).orderBy(OrderByField.from(column).asc()).build(); assertThat(SqlRenderer.toString(select)) - .isEqualTo("SELECT emp.name AS emp_name FROM employee AS emp ORDER BY emp_name ASC"); + .isEqualTo("SELECT emp.name AS emp_name FROM employee emp ORDER BY emp_name ASC"); } @Test // DATAJDBC-309