Author: tfischer
Date: Tue Sep 16 20:13:35 2014
New Revision: 1625370
URL: http://svn.apache.org/r1625370
Log:
Fix for oracle which needs the MINUS operator instead of EXCEPT
Modified:
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/AbstractAdapter.java
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/Adapter.java
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/OracleAdapter.java
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/sql/SqlBuilder.java
Modified:
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/AbstractAdapter.java
URL:
http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/AbstractAdapter.java?rev=1625370&r1=1625369&r2=1625370&view=diff
==============================================================================
---
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/AbstractAdapter.java
(original)
+++
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/AbstractAdapter.java
Tue Sep 16 20:13:35 2014
@@ -260,7 +260,7 @@ public abstract class AbstractAdapter im
*
* @return whether to use the MINUS operator instead of the EXCEPT
operator.
*/
- public boolean useExceptForMinus()
+ public boolean useMinusForExcept()
{
return false;
}
Modified:
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/Adapter.java
URL:
http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/Adapter.java?rev=1625370&r1=1625369&r2=1625370&view=diff
==============================================================================
---
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/Adapter.java
(original)
+++
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/Adapter.java
Tue Sep 16 20:13:35 2014
@@ -225,5 +225,5 @@ public interface Adapter extends Seriali
*
* @return whether to use the MINUS operator instead of the EXCEPT
operator.
*/
- boolean useExceptForMinus();
+ boolean useMinusForExcept();
}
Modified:
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/OracleAdapter.java
URL:
http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/OracleAdapter.java?rev=1625370&r1=1625369&r2=1625370&view=diff
==============================================================================
---
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/OracleAdapter.java
(original)
+++
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/adapter/OracleAdapter.java
Tue Sep 16 20:13:35 2014
@@ -356,7 +356,7 @@ public class OracleAdapter extends Abstr
* @return whether to use the MINUS operator instead of the EXCEPT
operator.
*/
@Override
- public boolean useExceptForMinus()
+ public boolean useMinusForExcept()
{
return true;
}
Modified:
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/sql/SqlBuilder.java
URL:
http://svn.apache.org/viewvc/db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/sql/SqlBuilder.java?rev=1625370&r1=1625369&r2=1625370&view=diff
==============================================================================
---
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/sql/SqlBuilder.java
(original)
+++
db/torque/torque4/trunk/torque-runtime/src/main/java/org/apache/torque/sql/SqlBuilder.java
Tue Sep 16 20:13:35 2014
@@ -570,7 +570,22 @@ public final class SqlBuilder
{
return;
}
- query.setPartOperator(criteria.getSetOperator().toString());
+ final String dbName = criteria.getDbName();
+ final Adapter adapter = Torque.getAdapter(dbName);
+
+ SqlEnum setOperator = criteria.getSetOperator();
+ if (adapter.useMinusForExcept())
+ {
+ if (SqlEnum.EXCEPT == setOperator)
+ {
+ setOperator = SqlEnum.MINUS;
+ }
+ else if (SqlEnum.EXCEPT_ALL == setOperator)
+ {
+ setOperator = SqlEnum.MINUS_ALL;
+ }
+ }
+ query.setPartOperator(setOperator.toString());
for (Criteria part : criteria.getSetCriteriaParts())
{
Query queryPart = buildQuery(part);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]