Author: mprudhom
Date: Wed Jan 17 13:48:27 2007
New Revision: 497190
URL: http://svn.apache.org/viewvc?view=rev&rev=497190
Log:
Fixed concatinate function to cast both sides as a VARCHAR, since DB2 and Derby
disallow parameters on both sides of the function.
Modified:
incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/AbstractDB2Dictionary.java
Modified:
incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/AbstractDB2Dictionary.java
URL:
http://svn.apache.org/viewvc/incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/AbstractDB2Dictionary.java?view=diff&rev=497190&r1=497189&r2=497190
==============================================================================
---
incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/AbstractDB2Dictionary.java
(original)
+++
incubator/openjpa/trunk/openjpa-jdbc/src/main/java/org/apache/openjpa/jdbc/sql/AbstractDB2Dictionary.java
Wed Jan 17 13:48:27 2007
@@ -31,9 +31,13 @@
longVarbinaryTypeName = "BLOB";
varbinaryTypeName = "BLOB";
+ // DB2-based databases have restrictions on having uncast parameters
+ // in string functions
toUpperCaseFunction = "UPPER(CAST({0} AS VARCHAR(1000)))";
toLowerCaseFunction = "LOWER(CAST({0} AS VARCHAR(1000)))";
stringLengthFunction = "LENGTH(CAST({0} AS VARCHAR(1000)))";
+ concatenateFunction = "(CAST({0} AS VARCHAR(1000)))||"
+ + "(CAST({1} AS VARCHAR(1000)))";
trimLeadingFunction = "LTRIM({0})";
trimTrailingFunction = "RTRIM({0})";