You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@empire-db.apache.org by do...@apache.org on 2019/07/30 09:10:18 UTC

[empire-db] branch master updated: EMPIREDB-293: bugfix DATETIME string for Oracle

This is an automated email from the ASF dual-hosted git repository.

doebele pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/empire-db.git


The following commit(s) were added to refs/heads/master by this push:
     new 1a5dfd6  EMPIREDB-293: bugfix DATETIME string for Oracle
1a5dfd6 is described below

commit 1a5dfd6687d879144b4e59826278b4b5b209c7d3
Author: Rainer Döbele <do...@apache.org>
AuthorDate: Tue Jul 30 11:10:12 2019 +0200

    EMPIREDB-293: bugfix DATETIME string for Oracle
---
 empire-db/src/main/java/org/apache/empire/db/DBDatabaseDriver.java    | 2 +-
 .../main/java/org/apache/empire/db/oracle/DBDatabaseDriverOracle.java | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/empire-db/src/main/java/org/apache/empire/db/DBDatabaseDriver.java b/empire-db/src/main/java/org/apache/empire/db/DBDatabaseDriver.java
index b8bef1d..a02e25b 100644
--- a/empire-db/src/main/java/org/apache/empire/db/DBDatabaseDriver.java
+++ b/empire-db/src/main/java/org/apache/empire/db/DBDatabaseDriver.java
@@ -724,7 +724,7 @@ public abstract class DBDatabaseDriver implements Serializable
                 return getSQLDateTimeString(value, SQL_DATE_TEMPLATE, SQL_DATE_PATTERN, SQL_CURRENT_DATE);
             case DATETIME:
                 // Only date (without time) provided?
-                if (!DBDatabase.SYSDATE.equals(value) && ObjectUtils.lengthOf(value)<=10)
+                if (!DBDatabase.SYSDATE.equals(value) && !(value instanceof Date) && ObjectUtils.lengthOf(value)<=10)
                     return getSQLDateTimeString(value, SQL_DATE_TEMPLATE, SQL_DATE_PATTERN, SQL_CURRENT_TIMESTAMP);
                 // Complete Date-Time Object with time 
                 return getSQLDateTimeString(value, SQL_DATETIME_TEMPLATE, SQL_DATETIME_PATTERN, SQL_CURRENT_TIMESTAMP);
diff --git a/empire-db/src/main/java/org/apache/empire/db/oracle/DBDatabaseDriverOracle.java b/empire-db/src/main/java/org/apache/empire/db/oracle/DBDatabaseDriverOracle.java
index 7be62db..32556df 100644
--- a/empire-db/src/main/java/org/apache/empire/db/oracle/DBDatabaseDriverOracle.java
+++ b/empire-db/src/main/java/org/apache/empire/db/oracle/DBDatabaseDriverOracle.java
@@ -162,10 +162,10 @@ public class DBDatabaseDriverOracle extends DBDatabaseDriver
             case SQL_CURRENT_DATE:              return "sysdate";
             case SQL_DATE_PATTERN:              return "yyyy-MM-dd";
             case SQL_DATE_TEMPLATE:             return "TO_DATE('{0}', 'YYYY-MM-DD')";
-            case SQL_DATETIME_PATTERN:          return "yyyy-MM-dd HH:mm:ss.SSS";
-            case SQL_DATETIME_TEMPLATE:         return "TO_DATE('{0}', 'YYYY-MM-DD HH24:MI:SS')";
             case SQL_CURRENT_TIMESTAMP:         return "systimestamp";
+            case SQL_DATETIME_PATTERN:          
             case SQL_TIMESTAMP_PATTERN:         return "yyyy-MM-dd HH:mm:ss.SSS";
+            case SQL_DATETIME_TEMPLATE:
             case SQL_TIMESTAMP_TEMPLATE:        return "TO_TIMESTAMP('{0}', 'YYYY.MM.DD HH24:MI:SS.FF')";
             // functions
             case SQL_FUNC_COALESCE:             return "nvl(?, {0})";