Browse Source

DATAJDBC-570 - Removes the AS for join table aliases.

The AS is not supported by Oracle and all other databases are fine without it.

Original pull request: #234.
pull/232/head
Jens Schauder 6 years ago committed by Mark Paluch
parent
commit
0c5a8c2b61
No known key found for this signature in database
GPG Key ID: 51A00FA751B91849
  1. 8
      spring-data-jdbc/src/test/java/org/springframework/data/jdbc/core/convert/SqlGeneratorFixedNamingStrategyUnitTests.java
  2. 32
      spring-data-jdbc/src/test/java/org/springframework/data/jdbc/core/convert/SqlGeneratorUnitTests.java
  3. 2
      spring-data-jdbc/src/test/java/org/springframework/data/jdbc/repository/query/PartTreeJdbcQueryUnitTests.java
  4. 2
      spring-data-relational/src/main/java/org/springframework/data/relational/core/sql/render/JoinVisitor.java
  5. 2
      spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/render/SelectRendererUnitTests.java

8
spring-data-jdbc/src/test/java/org/springframework/data/jdbc/core/convert/SqlGeneratorFixedNamingStrategyUnitTests.java

@ -89,8 +89,8 @@ public class SqlGeneratorFixedNamingStrategyUnitTests { @@ -89,8 +89,8 @@ public class SqlGeneratorFixedNamingStrategyUnitTests {
+ "\"ref_further\".\"FIXEDCUSTOMPROPERTYPREFIX_L2ID\" AS \"REF_FURTHER_FIXEDCUSTOMPROPERTYPREFIX_L2ID\", "
+ "\"ref_further\".\"FIXEDCUSTOMPROPERTYPREFIX_SOMETHING\" AS \"REF_FURTHER_FIXEDCUSTOMPROPERTYPREFIX_SOMETHING\" "
+ "FROM \"FIXEDCUSTOMSCHEMA\".\"FIXEDCUSTOMTABLEPREFIX_DUMMYENTITY\" "
+ "LEFT OUTER JOIN \"FIXEDCUSTOMSCHEMA\".\"FIXEDCUSTOMTABLEPREFIX_REFERENCEDENTITY\" AS \"ref\" ON \"ref\".\"FIXEDCUSTOMTABLEPREFIX_DUMMYENTITY\" = \"FIXEDCUSTOMSCHEMA\".\"FIXEDCUSTOMTABLEPREFIX_DUMMYENTITY\".\"FIXEDCUSTOMPROPERTYPREFIX_ID\" L"
+ "EFT OUTER JOIN \"FIXEDCUSTOMSCHEMA\".\"FIXEDCUSTOMTABLEPREFIX_SECONDLEVELREFERENCEDENTITY\" AS \"ref_further\" ON \"ref_further\".\"FIXEDCUSTOMTABLEPREFIX_REFERENCEDENTITY\" = \"ref\".\"FIXEDCUSTOMPROPERTYPREFIX_L1ID\" "
+ "LEFT OUTER JOIN \"FIXEDCUSTOMSCHEMA\".\"FIXEDCUSTOMTABLEPREFIX_REFERENCEDENTITY\" \"ref\" ON \"ref\".\"FIXEDCUSTOMTABLEPREFIX_DUMMYENTITY\" = \"FIXEDCUSTOMSCHEMA\".\"FIXEDCUSTOMTABLEPREFIX_DUMMYENTITY\".\"FIXEDCUSTOMPROPERTYPREFIX_ID\" L"
+ "EFT OUTER JOIN \"FIXEDCUSTOMSCHEMA\".\"FIXEDCUSTOMTABLEPREFIX_SECONDLEVELREFERENCEDENTITY\" \"ref_further\" ON \"ref_further\".\"FIXEDCUSTOMTABLEPREFIX_REFERENCEDENTITY\" = \"ref\".\"FIXEDCUSTOMPROPERTYPREFIX_L1ID\" "
+ "WHERE \"FIXEDCUSTOMSCHEMA\".\"FIXEDCUSTOMTABLEPREFIX_DUMMYENTITY\".\"FIXEDCUSTOMPROPERTYPREFIX_ID\" = :id");
softAssertions.assertAll();
}
@ -108,8 +108,8 @@ public class SqlGeneratorFixedNamingStrategyUnitTests { @@ -108,8 +108,8 @@ public class SqlGeneratorFixedNamingStrategyUnitTests {
"SELECT \"DUMMYENTITY\".\"ID\" AS \"ID\", \"DUMMYENTITY\".\"NAME\" AS \"NAME\", \"ref\".\"L1ID\" AS \"REF_L1ID\", \"ref\".\"CONTENT\" AS \"REF_CONTENT\", "
+ "\"ref_further\".\"L2ID\" AS \"REF_FURTHER_L2ID\", \"ref_further\".\"SOMETHING\" AS \"REF_FURTHER_SOMETHING\" "
+ "FROM \"DUMMYENTITY\" "
+ "LEFT OUTER JOIN \"REFERENCEDENTITY\" AS \"ref\" ON \"ref\".\"DUMMYENTITY\" = \"DUMMYENTITY\".\"ID\" "
+ "LEFT OUTER JOIN \"SECONDLEVELREFERENCEDENTITY\" AS \"ref_further\" ON \"ref_further\".\"REFERENCEDENTITY\" = \"ref\".\"L1ID\" "
+ "LEFT OUTER JOIN \"REFERENCEDENTITY\" \"ref\" ON \"ref\".\"DUMMYENTITY\" = \"DUMMYENTITY\".\"ID\" "
+ "LEFT OUTER JOIN \"SECONDLEVELREFERENCEDENTITY\" \"ref_further\" ON \"ref_further\".\"REFERENCEDENTITY\" = \"ref\".\"L1ID\" "
+ "WHERE \"DUMMYENTITY\".\"ID\" = :id");
softAssertions.assertAll();
}

32
spring-data-jdbc/src/test/java/org/springframework/data/jdbc/core/convert/SqlGeneratorUnitTests.java

@ -215,8 +215,8 @@ public class SqlGeneratorUnitTests { @@ -215,8 +215,8 @@ public class SqlGeneratorUnitTests {
"ref_further.x_l2id AS ref_further_x_l2id", //
"ref_further.x_something AS ref_further_x_something", //
"FROM dummy_entity ", //
"LEFT OUTER JOIN referenced_entity AS ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity AS ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"LEFT OUTER JOIN referenced_entity ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"ORDER BY x_name ASC");
}
@ -235,8 +235,8 @@ public class SqlGeneratorUnitTests { @@ -235,8 +235,8 @@ public class SqlGeneratorUnitTests {
"ref_further.x_l2id AS ref_further_x_l2id", //
"ref_further.x_something AS ref_further_x_something", //
"FROM dummy_entity ", //
"LEFT OUTER JOIN referenced_entity AS ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity AS ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"LEFT OUTER JOIN referenced_entity ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"ORDER BY x_name DESC", //
"x_other ASC");
}
@ -263,8 +263,8 @@ public class SqlGeneratorUnitTests { @@ -263,8 +263,8 @@ public class SqlGeneratorUnitTests {
"ref_further.x_l2id AS ref_further_x_l2id", //
"ref_further.x_something AS ref_further_x_something", //
"FROM dummy_entity ", //
"LEFT OUTER JOIN referenced_entity AS ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity AS ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"LEFT OUTER JOIN referenced_entity ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"OFFSET 40", //
"LIMIT 20");
}
@ -283,8 +283,8 @@ public class SqlGeneratorUnitTests { @@ -283,8 +283,8 @@ public class SqlGeneratorUnitTests {
"ref_further.x_l2id AS ref_further_x_l2id", //
"ref_further.x_something AS ref_further_x_something", //
"FROM dummy_entity ", //
"LEFT OUTER JOIN referenced_entity AS ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity AS ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"LEFT OUTER JOIN referenced_entity ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"ORDER BY x_name ASC", //
"OFFSET 30", //
"LIMIT 10");
@ -305,8 +305,8 @@ public class SqlGeneratorUnitTests { @@ -305,8 +305,8 @@ public class SqlGeneratorUnitTests {
"ref_further.x_l2id AS ref_further_x_l2id", //
"ref_further.x_something AS ref_further_x_something", //
"FROM dummy_entity ", //
"LEFT OUTER JOIN referenced_entity AS ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity AS ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"LEFT OUTER JOIN referenced_entity ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"WHERE dummy_entity.backref = :backref");
}
@ -327,8 +327,8 @@ public class SqlGeneratorUnitTests { @@ -327,8 +327,8 @@ public class SqlGeneratorUnitTests {
"ref_further.x_l2id AS ref_further_x_l2id", //
"ref_further.x_something AS ref_further_x_something", //
"FROM dummy_entity ", //
"LEFT OUTER JOIN referenced_entity AS ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity AS ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"LEFT OUTER JOIN referenced_entity ref ON ref.dummy_entity = dummy_entity.id1", //
"LEFT OUTER JOIN second_level_referenced_entity ref_further ON ref_further.referenced_entity = ref.x_l1id", //
"dummy_entity.backref = :backref", //
"dummy_entity.backref_key = :backref_key");
}
@ -345,8 +345,8 @@ public class SqlGeneratorUnitTests { @@ -345,8 +345,8 @@ public class SqlGeneratorUnitTests {
+ "ref_further.x_l2id AS ref_further_x_l2id, ref_further.x_something AS ref_further_x_something, " //
+ "dummy_entity.key-column AS key-column " //
+ "FROM dummy_entity " //
+ "LEFT OUTER JOIN referenced_entity AS ref ON ref.dummy_entity = dummy_entity.id1 " //
+ "LEFT OUTER JOIN second_level_referenced_entity AS ref_further ON ref_further.referenced_entity = ref.x_l1id " //
+ "LEFT OUTER JOIN referenced_entity ref ON ref.dummy_entity = dummy_entity.id1 " //
+ "LEFT OUTER JOIN second_level_referenced_entity ref_further ON ref_further.referenced_entity = ref.x_l1id " //
+ "WHERE dummy_entity.backref = :backref");
}
@ -367,8 +367,8 @@ public class SqlGeneratorUnitTests { @@ -367,8 +367,8 @@ public class SqlGeneratorUnitTests {
+ "ref_further.x_l2id AS ref_further_x_l2id, ref_further.x_something AS ref_further_x_something, " //
+ "dummy_entity.key-column AS key-column " //
+ "FROM dummy_entity " //
+ "LEFT OUTER JOIN referenced_entity AS ref ON ref.dummy_entity = dummy_entity.id1 " //
+ "LEFT OUTER JOIN second_level_referenced_entity AS ref_further ON ref_further.referenced_entity = ref.x_l1id " //
+ "LEFT OUTER JOIN referenced_entity ref ON ref.dummy_entity = dummy_entity.id1 " //
+ "LEFT OUTER JOIN second_level_referenced_entity ref_further ON ref_further.referenced_entity = ref.x_l1id " //
+ "WHERE dummy_entity.backref = :backref " + "ORDER BY key-column");
}

2
spring-data-jdbc/src/test/java/org/springframework/data/jdbc/repository/query/PartTreeJdbcQueryUnitTests.java

@ -62,7 +62,7 @@ public class PartTreeJdbcQueryUnitTests { @@ -62,7 +62,7 @@ public class PartTreeJdbcQueryUnitTests {
private static final String TABLE = "\"users\"";
private static final String ALL_FIELDS = "\"users\".\"ID\" AS \"ID\", \"users\".\"AGE\" AS \"AGE\", \"hated\".\"USER\" AS \"HATED_USER\", \"users\".\"ACTIVE\" AS \"ACTIVE\", \"users\".\"LAST_NAME\" AS \"LAST_NAME\", \"users\".\"FIRST_NAME\" AS \"FIRST_NAME\", \"users\".\"DATE_OF_BIRTH\" AS \"DATE_OF_BIRTH\", \"users\".\"HOBBY_REFERENCE\" AS \"HOBBY_REFERENCE\", \"hated\".\"NAME\" AS \"HATED_NAME\", \"users\".\"USER_CITY\" AS \"USER_CITY\", \"users\".\"USER_STREET\" AS \"USER_STREET\"";
private static final String JOIN_CLAUSE = "FROM \"users\" LEFT OUTER JOIN \"HOBBY\" AS \"hated\" ON \"hated\".\"USER\" = \"users\".\"ID\"";
private static final String JOIN_CLAUSE = "FROM \"users\" LEFT OUTER JOIN \"HOBBY\" \"hated\" ON \"hated\".\"USER\" = \"users\".\"ID\"";
private static final String BASE_SELECT = "SELECT " + ALL_FIELDS + " " + JOIN_CLAUSE;
JdbcMappingContext mappingContext = new JdbcMappingContext();

2
spring-data-relational/src/main/java/org/springframework/data/relational/core/sql/render/JoinVisitor.java

@ -66,7 +66,7 @@ class JoinVisitor extends TypedSubtreeVisitor<Join> { @@ -66,7 +66,7 @@ class JoinVisitor extends TypedSubtreeVisitor<Join> {
if (segment instanceof Table && !inCondition) {
joinClause.append(NameRenderer.render(context, (Table) segment));
if (segment instanceof Aliased) {
joinClause.append(" AS ").append(NameRenderer.render(context, (Aliased) segment));
joinClause.append(" ").append(NameRenderer.render(context, (Aliased) segment));
}
} else if (segment instanceof Condition) {

2
spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/render/SelectRendererUnitTests.java

@ -169,7 +169,7 @@ public class SelectRendererUnitTests { @@ -169,7 +169,7 @@ public class SelectRendererUnitTests {
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");
+ "JOIN tenant tenant_base ON tenant_base.tenant_id = department.tenant");
}
@Test // DATAJDBC-309

Loading…
Cancel
Save