EMPIREDB-346
another fix
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 bd23db7..934e72a 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
@@ -715,6 +715,7 @@
     { 
         if (value instanceof Enum<?>)
         {   // convert enum
+            log.warn("Enum of type {} supplied for getValueString. Converting value...", value.getClass().getName());
             value = ObjectUtils.getEnumValue((Enum<?>)value, type.isNumeric());
         }
         if (ObjectUtils.isEmpty(value))
diff --git a/empire-db/src/main/java/org/apache/empire/db/expr/column/DBValueExpr.java b/empire-db/src/main/java/org/apache/empire/db/expr/column/DBValueExpr.java
index 214a503..9161fa9 100644
--- a/empire-db/src/main/java/org/apache/empire/db/expr/column/DBValueExpr.java
+++ b/empire-db/src/main/java/org/apache/empire/db/expr/column/DBValueExpr.java
@@ -192,10 +192,14 @@
             ((DBExpr)value).addSQL(buf, context);

         }

         else

-        {   DataType dataType = getDataType();

+        {   // unpack

+            DataType dataType = getDataType();

+            Object dataValue = value;

+            if (dataValue instanceof Enum<?>)

+                dataValue = ObjectUtils.getEnumValue((Enum<?>)dataValue, dataType.isNumeric());

             // convert value to sql literal

             DBDatabaseDriver driver = db.getDriver();

-            String text = (driver!=null) ? driver.getValueString(value, dataType) : ObjectUtils.getString(value); 

+            String text = (driver!=null) ? driver.getValueString(dataValue, dataType) : ObjectUtils.getString(dataValue); 

             buf.append(text);

         }

     }