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/03 12:14:21 UTC

[empire-db] branch master updated: EMPIREDB-289: Rename DataType TEXT to VARCHAR

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 4e8f30d  EMPIREDB-289: Rename DataType TEXT to VARCHAR
4e8f30d is described below

commit 4e8f30d93ce31a66819207c16ef802672636877c
Author: Rainer Döbele <do...@apache.org>
AuthorDate: Wed Jul 3 14:14:06 2019 +0200

    EMPIREDB-289: Rename DataType TEXT to VARCHAR
---
 .../apache/empire/db/codegen/CodeGenParser.java    |  2 +-
 .../apache/empire/db/codegen/WriterService.java    |  1 +
 .../empire/samples/db/advanced/SampleAdvApp.java   |  2 +-
 .../empire/samples/db/advanced/SampleAdvDB.java    | 21 +++++-----
 .../org/apache/empire/samples/db/SampleDB.java     | 18 ++++----
 .../empire-db-example-codegen/generate.bat         |  2 +-
 .../samples/cxf/wssample/server/db/SampleDB.java   | 18 ++++----
 .../apache/empire/jsf2/websample/db/SampleDB.java  | 18 ++++----
 .../jsf2/websample/web/pages/EmployeeListPage.java |  2 +-
 .../apache/empire/samples/spring/db/SampleDB.java  | 18 ++++----
 .../apache/empire/spring/example1/SampleDB.java    | 18 ++++----
 .../struts2/websample/ws/SampleBeanDomain.java     | 18 ++++----
 .../empire/struts2/websample/db/SampleDB.java      | 18 ++++----
 .../org/apache/empire/rest/json/JsoColumnMeta.java |  2 +-
 .../org/apache/empire/vue/sample/db/SampleDB.java  | 18 ++++----
 .../empire/jsf2/controls/TextInputControl.java     |  7 ++--
 .../empire/jsf2/utils/TagEncodingHelper.java       |  1 +
 .../struts2/jsp/controls/TextInputControl.java     |  6 +--
 .../main/java/org/apache/empire/data/DataType.java | 12 +++++-
 .../java/org/apache/empire/db/DBColumnExpr.java    | 12 +++---
 .../java/org/apache/empire/db/DBDDLGenerator.java  |  2 +-
 .../main/java/org/apache/empire/db/DBDatabase.java |  8 ++--
 .../org/apache/empire/db/DBDatabaseDriver.java     |  4 +-
 .../src/main/java/org/apache/empire/db/DBExpr.java |  1 +
 .../java/org/apache/empire/db/DBTableColumn.java   |  1 +
 .../empire/db/derby/DBDatabaseDriverDerby.java     |  4 +-
 .../apache/empire/db/expr/column/DBConcatExpr.java |  2 +-
 .../apache/empire/db/h2/DBDatabaseDriverH2.java    |  2 +
 .../empire/db/hsql/DBDatabaseDriverHSql.java       |  1 +
 .../empire/db/mysql/DBDatabaseDriverMySQL.java     |  2 +
 .../empire/db/oracle/DBDatabaseDriverOracle.java   |  1 +
 .../empire/db/oracle/OracleDDLGenerator.java       |  1 +
 .../empire/db/oracle/OracleDataDictionnary.java    |  2 +-
 .../apache/empire/db/oracle/OracleSYSDatabase.java | 48 +++++++++++-----------
 .../db/postgresql/DBDatabaseDriverPostgreSQL.java  |  6 ++-
 .../empire/db/sqlite/DBDatabaseDriverSQLite.java   |  1 +
 .../empire/db/sqlserver/DBDatabaseDriverMSSQL.java |  3 ++
 .../empire/db/sqlserver/MSSqlDDLGenerator.java     |  1 +
 .../empire/db/validation/DBModelChecker.java       |  3 +-
 .../test/java/org/apache/empire/db/CompanyDB.java  | 18 ++++----
 .../java/org/apache/empire/db/DBCommandTest.java   |  2 +-
 .../java/org/apache/empire/db/SerializeTest.java   |  2 +-
 .../empire/db/hsql/DBDatabaseDriverHSqlTest.java   |  2 +-
 .../db/mssql/DBDatabaseDriverMSSqlDateTest.java    | 12 ++----
 .../empire/db/mysql/DBDatabaseDriverMySQLTest.java |  4 +-
 .../db/sqlite/DBDatabaseDriverSQLiteTest.java      |  2 +-
 46 files changed, 186 insertions(+), 163 deletions(-)

diff --git a/empire-db-codegen/src/main/java/org/apache/empire/db/codegen/CodeGenParser.java b/empire-db-codegen/src/main/java/org/apache/empire/db/codegen/CodeGenParser.java
index 0f8b749..4d34be2 100644
--- a/empire-db-codegen/src/main/java/org/apache/empire/db/codegen/CodeGenParser.java
+++ b/empire-db-codegen/src/main/java/org/apache/empire/db/codegen/CodeGenParser.java
@@ -464,7 +464,7 @@ public class CodeGenParser {
 			empireType = DataType.INTEGER;
 			break;
 		case Types.VARCHAR:
-			empireType = DataType.TEXT;
+			empireType = DataType.VARCHAR;
 			break;
 		case Types.DATE:
 			empireType = DataType.DATE;
diff --git a/empire-db-codegen/src/main/java/org/apache/empire/db/codegen/WriterService.java b/empire-db-codegen/src/main/java/org/apache/empire/db/codegen/WriterService.java
index 7566451..c619e22 100644
--- a/empire-db-codegen/src/main/java/org/apache/empire/db/codegen/WriterService.java
+++ b/empire-db-codegen/src/main/java/org/apache/empire/db/codegen/WriterService.java
@@ -229,6 +229,7 @@ public class WriterService {
 		case INTEGER:
 			return Long.class;
 		case TEXT:
+        case VARCHAR:
 			return String.class;
 		case DATE:
 			return Date.class;
diff --git a/empire-db-examples/empire-db-example-advanced/src/main/java/org/apache/empire/samples/db/advanced/SampleAdvApp.java b/empire-db-examples/empire-db-example-advanced/src/main/java/org/apache/empire/samples/db/advanced/SampleAdvApp.java
index 1100e23..9b7fd07 100644
--- a/empire-db-examples/empire-db-example-advanced/src/main/java/org/apache/empire/samples/db/advanced/SampleAdvApp.java
+++ b/empire-db-examples/empire-db-example-advanced/src/main/java/org/apache/empire/samples/db/advanced/SampleAdvApp.java
@@ -542,7 +542,7 @@ public class SampleAdvApp
         db.getDriver().setDDLColumnDefaults(true);
 
         // First, add a new column to the Table object
-        DBTableColumn C_FOO = db.T_EMPLOYEES.addColumn("FOO", DataType.TEXT, 20, DataMode.Nullable);
+        DBTableColumn C_FOO = db.T_EMPLOYEES.addColumn("FOO", DataType.VARCHAR, 20, DataMode.Nullable);
 
         // Now create the corresponding DDL statement 
         System.out.println("Creating new column named FOO as varchar(20) for the EMPLOYEES table:");
diff --git a/empire-db-examples/empire-db-example-advanced/src/main/java/org/apache/empire/samples/db/advanced/SampleAdvDB.java b/empire-db-examples/empire-db-example-advanced/src/main/java/org/apache/empire/samples/db/advanced/SampleAdvDB.java
index df1c4f2..9c6e358 100644
--- a/empire-db-examples/empire-db-example-advanced/src/main/java/org/apache/empire/samples/db/advanced/SampleAdvDB.java
+++ b/empire-db-examples/empire-db-example-advanced/src/main/java/org/apache/empire/samples/db/advanced/SampleAdvDB.java
@@ -20,7 +20,6 @@ package org.apache.empire.samples.db.advanced;
 
 import org.apache.empire.commons.Options;
 import org.apache.empire.data.DataType;
-import org.apache.empire.data.DataMode;
 import org.apache.empire.db.DBColumn;
 import org.apache.empire.db.DBColumnExpr;
 import org.apache.empire.db.DBCommand;
@@ -67,9 +66,9 @@ public class SampleAdvDB extends DBDatabase
             super("DEPARTMENTS", db);
             // ID
             C_DEPARTMENT_ID   = addColumn("DEPARTMENT_ID",    DataType.AUTOINC,       0, true, "DEP_ID_SEQUENCE");
-            C_NAME            = addColumn("NAME",             DataType.TEXT,         80, true);
-            C_HEAD            = addColumn("HEAD",             DataType.TEXT,         80, false);
-            C_BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.TEXT,          4, true, "ITTK");
+            C_NAME            = addColumn("NAME",             DataType.VARCHAR,      80, true);
+            C_HEAD            = addColumn("HEAD",             DataType.VARCHAR,      80, false);
+            C_BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.VARCHAR,       4, true, "ITTK");
             C_UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,      0, true);
 
             // Primary Key
@@ -108,13 +107,13 @@ public class SampleAdvDB extends DBDatabase
             super("EMPLOYEES", db);
             // ID
             C_EMPLOYEE_ID     = addColumn("EMPLOYEE_ID",      DataType.AUTOINC,      0, true, "EMPLOYEE_ID_SEQUENCE");
-            C_SALUTATION      = addColumn("SALUTATION",       DataType.TEXT,        20, false);
-            C_FIRSTNAME       = addColumn("FIRSTNAME",        DataType.TEXT,        40, true);
-            C_LASTNAME        = addColumn("LASTNAME",         DataType.TEXT,        40, true);
+            C_SALUTATION      = addColumn("SALUTATION",       DataType.VARCHAR,     20, false);
+            C_FIRSTNAME       = addColumn("FIRSTNAME",        DataType.VARCHAR,     40, true);
+            C_LASTNAME        = addColumn("LASTNAME",         DataType.VARCHAR,     40, true);
             C_DATE_OF_BIRTH   = addColumn("DATE_OF_BIRTH",    DataType.DATE,         0, false);
-            C_GENDER          = addColumn("GENDER",           DataType.TEXT,         1, false);
-            C_PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.TEXT,        40, false);
-            C_EMAIL           = addColumn("EMAIL",            DataType.TEXT,        80, false);
+            C_GENDER          = addColumn("GENDER",           DataType.VARCHAR,      1, false);
+            C_PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.VARCHAR,     40, false);
+            C_EMAIL           = addColumn("EMAIL",            DataType.VARCHAR,     80, false);
             C_RETIRED         = addColumn("RETIRED",          DataType.BOOL,         0, true, false);
             C_CHECKSUM        = addColumn("CHECKSUM",         DataType.INTEGER,      0, false);
             C_UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,     0, true);
@@ -221,7 +220,7 @@ public class SampleAdvDB extends DBDatabase
             // ID
             C_EMPLOYEE_ID     = addColumn(T_EMP.C_EMPLOYEE_ID);
             C_CURRENT_DEP_ID  = addColumn("CURRENT_DEP_ID", T_DEP.C_DEPARTMENT_ID); 
-            C_NAME_AND_DEP    = addColumn("NAME_AND_DEP", DataType.TEXT);
+            C_NAME_AND_DEP    = addColumn("NAME_AND_DEP", DataType.VARCHAR);
 
             // set Key-column (if any)
             setKeyColumn(C_EMPLOYEE_ID);
diff --git a/empire-db-examples/empire-db-example-basic/src/main/java/org/apache/empire/samples/db/SampleDB.java b/empire-db-examples/empire-db-example-basic/src/main/java/org/apache/empire/samples/db/SampleDB.java
index 746701e..bafaa86 100644
--- a/empire-db-examples/empire-db-example-basic/src/main/java/org/apache/empire/samples/db/SampleDB.java
+++ b/empire-db-examples/empire-db-example-basic/src/main/java/org/apache/empire/samples/db/SampleDB.java
@@ -69,9 +69,9 @@ public class SampleDB extends DBDatabase
             super("DEPARTMENTS", db);
             // ID
             DEPARTMENT_ID   = addColumn("DEPARTMENT_ID",    DataType.AUTOINC,       0, true, "DEP_ID_SEQUENCE");
-            NAME            = addColumn("NAME",             DataType.TEXT,         80, true);
-            HEAD            = addColumn("HEAD",             DataType.TEXT,         80, false);
-            BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.TEXT,          4, true, "ITTK");
+            NAME            = addColumn("NAME",             DataType.VARCHAR,      80, true);
+            HEAD            = addColumn("HEAD",             DataType.VARCHAR,      80, false);
+            BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.VARCHAR,       4, true, "ITTK");
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,      0, true);
 
             // Primary Key
@@ -108,14 +108,14 @@ public class SampleDB extends DBDatabase
             super("EMPLOYEES", db);
             // ID
             EMPLOYEE_ID     = addColumn("EMPLOYEE_ID",      DataType.AUTOINC,      0, true, "EMPLOYEE_ID_SEQUENCE");
-            SALUTATION      = addColumn("SALUTATION",       DataType.TEXT,        20, false);
-            FIRSTNAME       = addColumn("FIRSTNAME",        DataType.TEXT,        40, true);
-            LASTNAME        = addColumn("LASTNAME",         DataType.TEXT,        40, true);
+            SALUTATION      = addColumn("SALUTATION",       DataType.VARCHAR,     20, false);
+            FIRSTNAME       = addColumn("FIRSTNAME",        DataType.VARCHAR,     40, true);
+            LASTNAME        = addColumn("LASTNAME",         DataType.VARCHAR,     40, true);
             DATE_OF_BIRTH   = addColumn("DATE_OF_BIRTH",    DataType.DATE,         0, false);
             DEPARTMENT_ID   = addColumn("DEPARTMENT_ID",    DataType.INTEGER,      0, true);
-            GENDER          = addColumn("GENDER",           DataType.TEXT,         1, false);
-            PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.TEXT,        40, false);
-            EMAIL           = addColumn("EMAIL",            DataType.TEXT,        80, false);
+            GENDER          = addColumn("GENDER",           DataType.VARCHAR,      1, false);
+            PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.VARCHAR,     40, false);
+            EMAIL           = addColumn("EMAIL",            DataType.VARCHAR,     80, false);
             SALARY          = addColumn("SALARY",           DataType.DECIMAL,   10.2, false);
             RETIRED         = addColumn("RETIRED",          DataType.BOOL,         0, true, false);
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,     0, true);
diff --git a/empire-db-examples/empire-db-example-codegen/generate.bat b/empire-db-examples/empire-db-example-codegen/generate.bat
index f213fd4..cfc3788 100644
--- a/empire-db-examples/empire-db-example-codegen/generate.bat
+++ b/empire-db-examples/empire-db-example-codegen/generate.bat
@@ -19,7 +19,7 @@ IF [%1%] == [] GOTO INVALID_PARAMS
 IF [%2%] == [] GOTO INVALID_PARAMS
 rem base setting
 set repo=%2%
-set empire-db-version=2.4.7-SNAPSHOT
+set empire-db-version=2.5.0-SNAPSHOT
 set jdbc-jar-path=hsqldb\hsqldb\1.8.0.10\hsqldb-1.8.0.10.jar
 IF [%3%] == [] GOTO CLASSPATH
 set jdbc-jar-path=%3%
diff --git a/empire-db-examples/empire-db-example-cxf/src/main/java/org/apache/empire/samples/cxf/wssample/server/db/SampleDB.java b/empire-db-examples/empire-db-example-cxf/src/main/java/org/apache/empire/samples/cxf/wssample/server/db/SampleDB.java
index 0cbdbe0..5971084 100644
--- a/empire-db-examples/empire-db-example-cxf/src/main/java/org/apache/empire/samples/cxf/wssample/server/db/SampleDB.java
+++ b/empire-db-examples/empire-db-example-cxf/src/main/java/org/apache/empire/samples/cxf/wssample/server/db/SampleDB.java
@@ -62,9 +62,9 @@ public class SampleDB extends DBDatabase
             super("DEPARTMENTS", db);
             // ID
             DEPARTMENT_ID   = addColumn("DEPARTMENT_ID",    DataType.AUTOINC,       0, true, "DEP_ID_SEQUENCE");
-            NAME            = addColumn("NAME",             DataType.TEXT,         80, true);
-            HEAD            = addColumn("HEAD",             DataType.TEXT,         80, false);
-            BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.TEXT,          4, true, "ITTK");
+            NAME            = addColumn("NAME",             DataType.VARCHAR,      80, true);
+            HEAD            = addColumn("HEAD",             DataType.VARCHAR,      80, false);
+            BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.VARCHAR,       4, true, "ITTK");
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,      0, true);
 
             // Primary Key
@@ -101,14 +101,14 @@ public class SampleDB extends DBDatabase
             super("EMPLOYEES", db);
             // ID
             EMPLOYEE_ID     = addColumn("EMPLOYEE_ID",      DataType.AUTOINC,      0, true, "EMPLOYEE_ID_SEQUENCE");
-            SALUTATION      = addColumn("SALUTATION",       DataType.TEXT,        20, false);
-            FIRSTNAME       = addColumn("FIRSTNAME",        DataType.TEXT,        40, true);
-            LASTNAME        = addColumn("LASTNAME",         DataType.TEXT,        40, true);
+            SALUTATION      = addColumn("SALUTATION",       DataType.VARCHAR,     20, false);
+            FIRSTNAME       = addColumn("FIRSTNAME",        DataType.VARCHAR,     40, true);
+            LASTNAME        = addColumn("LASTNAME",         DataType.VARCHAR,     40, true);
             DATE_OF_BIRTH   = addColumn("DATE_OF_BIRTH",    DataType.DATE,         0, false);
             DEPARTMENT_ID   = addColumn("DEPARTMENT_ID",    DataType.INTEGER,      0, true);
-            GENDER          = addColumn("GENDER",           DataType.TEXT,         1, false);
-            PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.TEXT,        40, false);
-            EMAIL           = addColumn("EMAIL",            DataType.TEXT,        80, false);
+            GENDER          = addColumn("GENDER",           DataType.VARCHAR,      1, false);
+            PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.VARCHAR,     40, false);
+            EMAIL           = addColumn("EMAIL",            DataType.VARCHAR,     80, false);
             SALARY          = addColumn("SALARY",           DataType.DECIMAL,   10.2, false);
             RETIRED         = addColumn("RETIRED",          DataType.BOOL,         0, true, false);
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,     0, true);
diff --git a/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/websample/db/SampleDB.java b/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/websample/db/SampleDB.java
index faa94a6..6334bc7 100644
--- a/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/websample/db/SampleDB.java
+++ b/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/websample/db/SampleDB.java
@@ -67,9 +67,9 @@ public class SampleDB extends DBDatabase
             super("DEPARTMENTS", db);
             // ID
             DEPARTMENT_ID 	= addColumn("DEPARTMENT_ID", 	DataType.AUTOINC,	 0, DataMode.NotNull, "DEP_ID_SEQUENCE");
-            NAME 			= addColumn("NAME", 			DataType.TEXT, 		80, DataMode.NotNull);
-            HEAD 			= addColumn("HEAD", 			DataType.TEXT, 		80, DataMode.Nullable);
-            BUSINESS_UNIT 	= addColumn("BUSINESS_UNIT", 	DataType.TEXT,		 4, DataMode.NotNull, "ITTK");
+            NAME 			= addColumn("NAME", 			DataType.VARCHAR,   80, DataMode.NotNull);
+            HEAD 			= addColumn("HEAD", 			DataType.VARCHAR,   80, DataMode.Nullable);
+            BUSINESS_UNIT 	= addColumn("BUSINESS_UNIT", 	DataType.VARCHAR,    4, DataMode.NotNull, "ITTK");
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,	 0, DataMode.NotNull);
 
             // Primary Key
@@ -108,14 +108,14 @@ public class SampleDB extends DBDatabase
             super("EMPLOYEES", db);
             // ID
             EMPLOYEE_ID 	= addColumn("EMPLOYEE_ID", 		DataType.AUTOINC, 	 0, DataMode.NotNull, "EMPLOYEE_ID_SEQUENCE");
-            SALUTATION 		= addColumn("SALUTATION", 		DataType.TEXT, 		 5, DataMode.Nullable);
-            FIRST_NAME 		= addColumn("FIRST_NAME", 		DataType.TEXT, 		40, DataMode.NotNull);
-            LAST_NAME 		= addColumn("LAST_NAME", 		DataType.TEXT, 		40, DataMode.NotNull);
+            SALUTATION 		= addColumn("SALUTATION", 		DataType.VARCHAR,	 5, DataMode.Nullable);
+            FIRST_NAME 		= addColumn("FIRST_NAME", 		DataType.VARCHAR,	40, DataMode.NotNull);
+            LAST_NAME 		= addColumn("LAST_NAME", 		DataType.VARCHAR,	40, DataMode.NotNull);
             DATE_OF_BIRTH 	= addColumn("DATE_OF_BIRTH", 	DataType.DATE,		 0, DataMode.Nullable);
             DEPARTMENT_ID 	= addColumn("DEPARTMENT_ID", 	DataType.INTEGER, 	 0, DataMode.NotNull);
-            GENDER 			= addColumn("GENDER", 			DataType.TEXT, 		 1, DataMode.Nullable);
-            PHONE_NUMBER 	= addColumn("PHONE_NUMBER", 	DataType.TEXT, 		40, DataMode.Nullable);
-            EMAIL 			= addColumn("EMAIL", 			DataType.TEXT, 		80, DataMode.Nullable);
+            GENDER 			= addColumn("GENDER", 			DataType.VARCHAR,	 1, DataMode.Nullable);
+            PHONE_NUMBER 	= addColumn("PHONE_NUMBER", 	DataType.VARCHAR,	40, DataMode.Nullable);
+            EMAIL 			= addColumn("EMAIL", 			DataType.VARCHAR,	80, DataMode.Nullable);
             RETIRED			= addColumn("RETIRED", 			DataType.BOOL, 		 0, DataMode.NotNull, false);
             // PICTURE 		= addColumn("PICTURE", 			DataType.BLOB, 		 0, DataMode.Nullable);
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,	 0, DataMode.NotNull);
diff --git a/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/websample/web/pages/EmployeeListPage.java b/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/websample/web/pages/EmployeeListPage.java
index b015c4c..e98a72b 100644
--- a/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/websample/web/pages/EmployeeListPage.java
+++ b/empire-db-examples/empire-db-example-jsf2/src/main/java/org/apache/empire/jsf2/websample/web/pages/EmployeeListPage.java
@@ -239,7 +239,7 @@ public class EmployeeListPage extends SamplePage
                 return;
             }
             // text
-            if (col.getOptions() == null && col.getDataType().equals(DataType.TEXT))
+            if (col.getOptions() == null && col.getDataType().isText())
             {
                 StringBuilder b = new StringBuilder();
                 b.append("%");
diff --git a/empire-db-examples/empire-db-example-spring/src/main/java/org/apache/empire/samples/spring/db/SampleDB.java b/empire-db-examples/empire-db-example-spring/src/main/java/org/apache/empire/samples/spring/db/SampleDB.java
index 98e73ca..0e5d394 100644
--- a/empire-db-examples/empire-db-example-spring/src/main/java/org/apache/empire/samples/spring/db/SampleDB.java
+++ b/empire-db-examples/empire-db-example-spring/src/main/java/org/apache/empire/samples/spring/db/SampleDB.java
@@ -64,9 +64,9 @@ public class SampleDB extends DBDatabase
             super("DEPARTMENTS", db);
             // ID
             DEPARTMENT_ID   = addColumn("DEPARTMENT_ID",    DataType.AUTOINC,       0, DataMode.AutoGenerated, "DEP_ID_SEQUENCE");
-            NAME            = addColumn("NAME",             DataType.TEXT,         80, DataMode.NotNull);
-            HEAD            = addColumn("HEAD",             DataType.TEXT,         80, DataMode.Nullable);
-            BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.TEXT,          4, DataMode.NotNull, "ITTK");
+            NAME            = addColumn("NAME",             DataType.VARCHAR,      80, DataMode.NotNull);
+            HEAD            = addColumn("HEAD",             DataType.VARCHAR,      80, DataMode.Nullable);
+            BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.VARCHAR,       4, DataMode.NotNull, "ITTK");
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,      0, DataMode.AutoGenerated);
 
             // Primary Key
@@ -103,14 +103,14 @@ public class SampleDB extends DBDatabase
             super("EMPLOYEES", db);
             // ID
             EMPLOYEE_ID     = addColumn("EMPLOYEE_ID",      DataType.AUTOINC,      0, DataMode.AutoGenerated, "EMPLOYEE_ID_SEQUENCE");
-            SALUTATION      = addColumn("SALUTATION",       DataType.TEXT,        20, DataMode.Nullable);
-            FIRSTNAME       = addColumn("FIRSTNAME",        DataType.TEXT,        40, DataMode.NotNull);
-            LASTNAME        = addColumn("LASTNAME",         DataType.TEXT,        40, DataMode.NotNull);
+            SALUTATION      = addColumn("SALUTATION",       DataType.VARCHAR,     20, DataMode.Nullable);
+            FIRSTNAME       = addColumn("FIRSTNAME",        DataType.VARCHAR,     40, DataMode.NotNull);
+            LASTNAME        = addColumn("LASTNAME",         DataType.VARCHAR,     40, DataMode.NotNull);
             DATE_OF_BIRTH   = addColumn("DATE_OF_BIRTH",    DataType.DATE,         0, DataMode.Nullable);
             DEPARTMENT_ID   = addColumn("DEPARTMENT_ID",    DataType.INTEGER,      0, DataMode.NotNull);
-            GENDER          = addColumn("GENDER",           DataType.TEXT,         1, DataMode.Nullable);
-            PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.TEXT,        40, DataMode.Nullable);
-            EMAIL           = addColumn("EMAIL",            DataType.TEXT,        80, DataMode.Nullable);
+            GENDER          = addColumn("GENDER",           DataType.VARCHAR,      1, DataMode.Nullable);
+            PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.VARCHAR,     40, DataMode.Nullable);
+            EMAIL           = addColumn("EMAIL",            DataType.VARCHAR,     80, DataMode.Nullable);
             SALARY          = addColumn("SALARY",           DataType.DECIMAL,   10.2, DataMode.Nullable);
             RETIRED         = addColumn("RETIRED",          DataType.BOOL,         0, DataMode.NotNull, false);
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,     0, DataMode.AutoGenerated);
diff --git a/empire-db-examples/empire-db-example-spring/src/main/java/org/apache/empire/spring/example1/SampleDB.java b/empire-db-examples/empire-db-example-spring/src/main/java/org/apache/empire/spring/example1/SampleDB.java
index c8f3284..c25e501 100644
--- a/empire-db-examples/empire-db-example-spring/src/main/java/org/apache/empire/spring/example1/SampleDB.java
+++ b/empire-db-examples/empire-db-example-spring/src/main/java/org/apache/empire/spring/example1/SampleDB.java
@@ -64,9 +64,9 @@ public class SampleDB extends DBDatabase
             super("DEPARTMENTS", db);
             // ID
             DEPARTMENT_ID   = addColumn("DEPARTMENT_ID",    DataType.AUTOINC,       0, true, "DEP_ID_SEQUENCE");
-            NAME            = addColumn("NAME",             DataType.TEXT,         80, true);
-            HEAD            = addColumn("HEAD",             DataType.TEXT,         80, false);
-            BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.TEXT,          4, true, "ITTK");
+            NAME            = addColumn("NAME",             DataType.VARCHAR,      80, true);
+            HEAD            = addColumn("HEAD",             DataType.VARCHAR,      80, false);
+            BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.VARCHAR,       4, true, "ITTK");
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,      0, true);
 
             // Primary Key
@@ -103,14 +103,14 @@ public class SampleDB extends DBDatabase
             super("EMPLOYEES", db);
             // ID
             EMPLOYEE_ID     = addColumn("EMPLOYEE_ID",      DataType.AUTOINC,      0, true, "EMPLOYEE_ID_SEQUENCE");
-            SALUTATION      = addColumn("SALUTATION",       DataType.TEXT,        20, false);
-            FIRSTNAME       = addColumn("FIRST_NAME",       DataType.TEXT,        40, true);
-            LASTNAME        = addColumn("LAST_NAME",        DataType.TEXT,        40, true);
+            SALUTATION      = addColumn("SALUTATION",       DataType.VARCHAR,     20, false);
+            FIRSTNAME       = addColumn("FIRST_NAME",       DataType.VARCHAR,     40, true);
+            LASTNAME        = addColumn("LAST_NAME",        DataType.VARCHAR,     40, true);
             DATE_OF_BIRTH   = addColumn("DATE_OF_BIRTH",    DataType.DATE,         0, false);
             DEPARTMENT_ID   = addColumn("DEPARTMENT_ID",    DataType.INTEGER,      0, true);
-            GENDER          = addColumn("GENDER",           DataType.TEXT,         1, false);
-            PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.TEXT,        40, false);
-            EMAIL           = addColumn("EMAIL",            DataType.TEXT,        80, false);
+            GENDER          = addColumn("GENDER",           DataType.VARCHAR,      1, false);
+            PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.VARCHAR,     40, false);
+            EMAIL           = addColumn("EMAIL",            DataType.VARCHAR,     80, false);
             SALARY          = addColumn("SALARY",           DataType.DECIMAL,   10.2, false);
             RETIRED         = addColumn("RETIRED",          DataType.BOOL,         0, true, false);
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,     0, true);
diff --git a/empire-db-examples/empire-db-example-struts2-cxf/src/main/java/org/apache/empire/struts2/websample/ws/SampleBeanDomain.java b/empire-db-examples/empire-db-example-struts2-cxf/src/main/java/org/apache/empire/struts2/websample/ws/SampleBeanDomain.java
index d93c7f9..491f937 100644
--- a/empire-db-examples/empire-db-example-struts2-cxf/src/main/java/org/apache/empire/struts2/websample/ws/SampleBeanDomain.java
+++ b/empire-db-examples/empire-db-example-struts2-cxf/src/main/java/org/apache/empire/struts2/websample/ws/SampleBeanDomain.java
@@ -50,9 +50,9 @@ public class SampleBeanDomain extends BeanDomain
             super("DEPARTMENTS", dom);
             // ID
             C_DEPARTMENT_ID   = addProp("departmentId",    DataType.AUTOINC,       0, DataMode.NotNull);
-            C_NAME            = addProp("name",            DataType.TEXT,         80, DataMode.NotNull);
-            C_HEAD            = addProp("head",            DataType.TEXT,         80, DataMode.Nullable);
-            C_BUSINESS_UNIT   = addProp("businessUnit",    DataType.TEXT,          4, DataMode.NotNull);
+            C_NAME            = addProp("name",            DataType.VARCHAR,      80, DataMode.NotNull);
+            C_HEAD            = addProp("head",            DataType.VARCHAR,      80, DataMode.Nullable);
+            C_BUSINESS_UNIT   = addProp("businessUnit",    DataType.VARCHAR,       4, DataMode.NotNull);
             C_UPDATE_TIMESTAMP= addProp("updateTimestamp", DataType.DATETIME,      0, DataMode.AutoGenerated);
         
             // Primary Key
@@ -87,14 +87,14 @@ public class SampleBeanDomain extends BeanDomain
             super("EMPLOYEES", dom);
             // ID
             C_EMPLOYEE_ID     = addProp("employeeId",		DataType.AUTOINC,      0, DataMode.NotNull);
-            C_SALUTATION      = addProp("salutation",       DataType.TEXT,        20, DataMode.Nullable);
-            C_FIRSTNAME       = addProp("firstname",        DataType.TEXT,        40, DataMode.NotNull);
-            C_LASTNAME        = addProp("lastname",         DataType.TEXT,        40, DataMode.NotNull);
+            C_SALUTATION      = addProp("salutation",       DataType.VARCHAR,     20, DataMode.Nullable);
+            C_FIRSTNAME       = addProp("firstname",        DataType.VARCHAR,     40, DataMode.NotNull);
+            C_LASTNAME        = addProp("lastname",         DataType.VARCHAR,     40, DataMode.NotNull);
             C_DATE_OF_BIRTH   = addProp("dateOfBirth",		DataType.DATE,         0, DataMode.Nullable);
             C_DEPARTMENT_ID   = addProp("departmentId",		DataType.INTEGER,      0, DataMode.NotNull,		"select");
-            C_GENDER          = addProp("gender",           DataType.TEXT,         1, DataMode.Nullable,	"select");
-            C_PHONE_NUMBER    = addProp("phoneNumber",		DataType.TEXT,        40, DataMode.Nullable, 	"phone");
-            C_EMAIL           = addProp("email",            DataType.TEXT,        80, DataMode.Nullable);
+            C_GENDER          = addProp("gender",           DataType.VARCHAR,      1, DataMode.Nullable,	"select");
+            C_PHONE_NUMBER    = addProp("phoneNumber",		DataType.VARCHAR,     40, DataMode.Nullable, 	"phone");
+            C_EMAIL           = addProp("email",            DataType.VARCHAR,     80, DataMode.Nullable);
             C_RETIRED         = addProp("retired",          DataType.BOOL,         0, DataMode.NotNull);
             C_UPDATE_TIMESTAMP= addProp("updateTimestamp",	DataType.DATETIME,     0, DataMode.AutoGenerated, "text");
         
diff --git a/empire-db-examples/empire-db-example-struts2/src/main/java/org/apache/empire/struts2/websample/db/SampleDB.java b/empire-db-examples/empire-db-example-struts2/src/main/java/org/apache/empire/struts2/websample/db/SampleDB.java
index 7ee179c..2347f2b 100644
--- a/empire-db-examples/empire-db-example-struts2/src/main/java/org/apache/empire/struts2/websample/db/SampleDB.java
+++ b/empire-db-examples/empire-db-example-struts2/src/main/java/org/apache/empire/struts2/websample/db/SampleDB.java
@@ -55,9 +55,9 @@ public class SampleDB extends DBDatabase
             super("DEPARTMENTS", db);
             // ID
             C_DEPARTMENT_ID   = addColumn("DEPARTMENT_ID",    DataType.AUTOINC,       0, DataMode.NotNull, "DEP_ID_SEQUENCE");
-            C_NAME            = addColumn("NAME",             DataType.TEXT,         80, DataMode.NotNull);
-            C_HEAD            = addColumn("HEAD",             DataType.TEXT,         80, DataMode.Nullable);
-            C_BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.TEXT,          4, DataMode.NotNull, "ITTK");
+            C_NAME            = addColumn("NAME",             DataType.VARCHAR,      80, DataMode.NotNull);
+            C_HEAD            = addColumn("HEAD",             DataType.VARCHAR,      80, DataMode.Nullable);
+            C_BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.VARCHAR,       4, DataMode.NotNull, "ITTK");
             C_UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,      0, DataMode.NotNull);
         
             // Primary Key
@@ -94,14 +94,14 @@ public class SampleDB extends DBDatabase
             super("EMPLOYEES", db);
             // ID
             C_EMPLOYEE_ID     = addColumn("EMPLOYEE_ID",      DataType.AUTOINC,      0, DataMode.NotNull, "EMPLOYEE_ID_SEQUENCE");
-            C_SALUTATION      = addColumn("SALUTATION",       DataType.TEXT,        20, DataMode.Nullable);
-            C_FIRSTNAME       = addColumn("FIRSTNAME",        DataType.TEXT,        40, DataMode.NotNull);
-            C_LASTNAME        = addColumn("LASTNAME",         DataType.TEXT,        40, DataMode.NotNull);
+            C_SALUTATION      = addColumn("SALUTATION",       DataType.VARCHAR,     20, DataMode.Nullable);
+            C_FIRSTNAME       = addColumn("FIRSTNAME",        DataType.VARCHAR,     40, DataMode.NotNull);
+            C_LASTNAME        = addColumn("LASTNAME",         DataType.VARCHAR,     40, DataMode.NotNull);
             C_DATE_OF_BIRTH   = addColumn("DATE_OF_BIRTH",    DataType.DATE,         0, DataMode.Nullable);
             C_DEPARTMENT_ID   = addColumn("DEPARTMENT_ID",    DataType.INTEGER,      0, DataMode.NotNull);
-            C_GENDER          = addColumn("GENDER",           DataType.TEXT,         1, DataMode.Nullable);
-            C_PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.TEXT,        40, DataMode.Nullable);
-            C_EMAIL           = addColumn("EMAIL",            DataType.TEXT,        80, DataMode.Nullable);
+            C_GENDER          = addColumn("GENDER",           DataType.VARCHAR,      1, DataMode.Nullable);
+            C_PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.VARCHAR,     40, DataMode.Nullable);
+            C_EMAIL           = addColumn("EMAIL",            DataType.VARCHAR,     80, DataMode.Nullable);
             C_RETIRED         = addColumn("RETIRED",          DataType.BOOL,         0, DataMode.NotNull, false);
             C_UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,     0, DataMode.NotNull);
         
diff --git a/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/json/JsoColumnMeta.java b/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/json/JsoColumnMeta.java
index d3b8f4b..1656016 100644
--- a/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/json/JsoColumnMeta.java
+++ b/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/rest/json/JsoColumnMeta.java
@@ -69,7 +69,7 @@ public class JsoColumnMeta extends LinkedHashMap<String, Object>
         put(_disabled,  disabled);
         put(_required,  required);
         put(_title,     resolver.resolveText(StringUtils.coalesce(column.getTitle(), column.getName())));
-        if (column.getDataType()==DataType.TEXT)
+        if (column.getDataType()==DataType.VARCHAR || column.getDataType()==DataType.CHAR)
         {   // add maxLength
             put(_maxLength, (int)column.getSize());
         }
diff --git a/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/vue/sample/db/SampleDB.java b/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/vue/sample/db/SampleDB.java
index 0fd314a..5fdfbca 100644
--- a/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/vue/sample/db/SampleDB.java
+++ b/empire-db-examples/empire-db-example-vue/src/main/java/org/apache/empire/vue/sample/db/SampleDB.java
@@ -66,9 +66,9 @@ public class SampleDB extends DBDatabase
             super("DEPARTMENTS", db);
             // ID
             DEPARTMENT_ID 	= addColumn("DEPARTMENT_ID", 	DataType.AUTOINC,	 0, true, "DEP_ID_SEQUENCE");
-            NAME 			= addColumn("NAME", 			DataType.TEXT, 		80, true);
-            HEAD 			= addColumn("HEAD", 			DataType.TEXT, 		80, false);
-            BUSINESS_UNIT 	= addColumn("BUSINESS_UNIT", 	DataType.TEXT,		 4, true, "ITTK");
+            NAME 			= addColumn("NAME", 			DataType.VARCHAR,	80, true);
+            HEAD 			= addColumn("HEAD", 			DataType.VARCHAR,	80, false);
+            BUSINESS_UNIT 	= addColumn("BUSINESS_UNIT", 	DataType.VARCHAR,    4, true, "ITTK");
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,	 0, true);
 
             // Primary Key
@@ -107,14 +107,14 @@ public class SampleDB extends DBDatabase
             super("EMPLOYEES", db);
             // ID
             EMPLOYEE_ID 	= addColumn("EMPLOYEE_ID", 		DataType.AUTOINC, 	 0, true, "EMPLOYEE_ID_SEQUENCE");
-            SALUTATION 		= addColumn("SALUTATION", 		DataType.TEXT, 		 5, false);
-            FIRST_NAME 		= addColumn("FIRST_NAME", 		DataType.TEXT, 		40, true);
-            LAST_NAME 		= addColumn("LAST_NAME", 		DataType.TEXT, 		40, true);
+            SALUTATION 		= addColumn("SALUTATION", 		DataType.VARCHAR,	 5, false);
+            FIRST_NAME 		= addColumn("FIRST_NAME", 		DataType.VARCHAR,	40, true);
+            LAST_NAME 		= addColumn("LAST_NAME", 		DataType.VARCHAR,	40, true);
             DATE_OF_BIRTH 	= addColumn("DATE_OF_BIRTH", 	DataType.DATE,		 0, false);
             DEPARTMENT_ID 	= addColumn("DEPARTMENT_ID", 	DataType.INTEGER, 	 0, true);
-            GENDER 			= addColumn("GENDER", 			DataType.TEXT, 		 1, false);
-            PHONE_NUMBER 	= addColumn("PHONE_NUMBER", 	DataType.TEXT, 		40, false);
-            EMAIL 			= addColumn("EMAIL", 			DataType.TEXT, 		80, false);
+            GENDER 			= addColumn("GENDER", 			DataType.VARCHAR,	 1, false);
+            PHONE_NUMBER 	= addColumn("PHONE_NUMBER", 	DataType.VARCHAR,	40, false);
+            EMAIL 			= addColumn("EMAIL", 			DataType.VARCHAR,	80, false);
             RETIRED			= addColumn("RETIRED", 			DataType.BOOL, 		 0, true, false);
             // PICTURE 		= addColumn("PICTURE", 			DataType.BLOB, 		 0, false);
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,	 0, true);
diff --git a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java
index bbb5c4a..a6b99e2 100644
--- a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java
+++ b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/controls/TextInputControl.java
@@ -255,7 +255,7 @@ public class TextInputControl extends InputControl
         // Format Value
         Column column = vi.getColumn();
         DataType dataType = getValueType(value, (column != null) ? column.getDataType() : DataType.UNKNOWN);
-        if (dataType == DataType.TEXT || dataType == DataType.UNKNOWN)
+        if (dataType.isText() || dataType == DataType.UNKNOWN)
         { // String
             String s = String.valueOf(value);
             if (hasFormatOption(vi, "noencode"))
@@ -414,8 +414,7 @@ public class TextInputControl extends InputControl
         Column col = ii.getColumn();
         // cast to DBTableColumn 
         DataType type = col.getDataType();
-        if (type == DataType.CHAR || 
-            type == DataType.TEXT)
+        if (type == DataType.CHAR || type == DataType.VARCHAR || type == DataType.TEXT)
             return (int) Math.round(col.getSize());
         if (type == DataType.AUTOINC || type == DataType.INTEGER)
             return 10;
@@ -460,7 +459,7 @@ public class TextInputControl extends InputControl
     {
         // Detect Data Type from Value
         if (value instanceof String)
-            return DataType.TEXT;
+            return DataType.VARCHAR;
         if (value instanceof Number)
         { // Check desired type
             if (desiredType == DataType.AUTOINC || 
diff --git a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/utils/TagEncodingHelper.java b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/utils/TagEncodingHelper.java
index 6f2ba39..4bfafc8 100644
--- a/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/utils/TagEncodingHelper.java
+++ b/empire-db-jsf2/src/main/java/org/apache/empire/jsf2/utils/TagEncodingHelper.java
@@ -1402,6 +1402,7 @@ public class TagEncodingHelper implements NamingContainer
             case FLOAT:
                 return CSS_DATA_TYPE_NUMBER;
             case TEXT:
+            case VARCHAR:
             case CHAR:
                 return CSS_DATA_TYPE_TEXT;
             case DATE:
diff --git a/empire-db-struts2/src/main/java/org/apache/empire/struts2/jsp/controls/TextInputControl.java b/empire-db-struts2/src/main/java/org/apache/empire/struts2/jsp/controls/TextInputControl.java
index a4acee6..a493e07 100644
--- a/empire-db-struts2/src/main/java/org/apache/empire/struts2/jsp/controls/TextInputControl.java
+++ b/empire-db-struts2/src/main/java/org/apache/empire/struts2/jsp/controls/TextInputControl.java
@@ -47,7 +47,7 @@ public class TextInputControl extends InputControl
     {
         // Check Data Type
         DataType type = column.getDataType();
-        if (type==DataType.TEXT)
+        if (type.isText())
             return value;
         // Check other types
         if (type==DataType.INTEGER)
@@ -116,7 +116,7 @@ public class TextInputControl extends InputControl
         // Format Value
         Column column = vi.getColumn();
         DataType dataType = getValueType(value, (column != null) ? column.getDataType() : DataType.UNKNOWN);
-        if (dataType == DataType.TEXT || dataType == DataType.UNKNOWN)
+        if (dataType.isText() || dataType == DataType.UNKNOWN)
         { // String
             String s = String.valueOf(value);
             if (hasFormatOption(vi, "noencode"))
@@ -258,7 +258,7 @@ public class TextInputControl extends InputControl
     {
         // Detect Data Type from Value
         if (value instanceof String)
-            return DataType.TEXT;
+            return DataType.VARCHAR;
         if (value instanceof Number)
         { // Check desired type
             if (desiredType == DataType.AUTOINC || desiredType == DataType.INTEGER || 
diff --git a/empire-db/src/main/java/org/apache/empire/data/DataType.java b/empire-db/src/main/java/org/apache/empire/data/DataType.java
index 1e721d2..9b5c791 100644
--- a/empire-db/src/main/java/org/apache/empire/data/DataType.java
+++ b/empire-db/src/main/java/org/apache/empire/data/DataType.java
@@ -41,8 +41,16 @@ public enum DataType
     AUTOINC, //      = 2;
     
     /**
-     * Small text (represents varchar)
+     * Variable text (represents varchar)
      */
+    VARCHAR, //      = 3;
+    
+    /**
+     * Variable text (represents varchar)
+     * 
+     * @deprecated  Use VARCHAR instead
+     */
+    @Deprecated
     TEXT, //         = 3;
     
     /**
@@ -96,7 +104,7 @@ public enum DataType
      */
     public boolean isText()
     {
-        return (this==DataType.TEXT || this==DataType.CHAR || this==DataType.CLOB);
+        return (this==DataType.TEXT || this==DataType.VARCHAR || this==DataType.CHAR || this==DataType.CLOB);
     }
 
     /**
diff --git a/empire-db/src/main/java/org/apache/empire/db/DBColumnExpr.java b/empire-db/src/main/java/org/apache/empire/db/DBColumnExpr.java
index b8e6914..3c2b33e 100644
--- a/empire-db/src/main/java/org/apache/empire/db/DBColumnExpr.java
+++ b/empire-db/src/main/java/org/apache/empire/db/DBColumnExpr.java
@@ -347,7 +347,7 @@ public abstract class DBColumnExpr extends DBExpr
      */
     public DBCompareColExpr likeUpper(String value)
     { 
-        DBValueExpr expr = new DBValueExpr(getDatabase(), value, DataType.TEXT);
+        DBValueExpr expr = new DBValueExpr(getDatabase(), value, DataType.VARCHAR);
         return new DBCompareColExpr(this.upper(), DBCmpType.LIKE, expr.upper());
     }
 
@@ -361,7 +361,7 @@ public abstract class DBColumnExpr extends DBExpr
      */
     public DBCompareColExpr likeLower(String value)
     { 
-        DBValueExpr expr = new DBValueExpr(getDatabase(), value, DataType.TEXT);
+        DBValueExpr expr = new DBValueExpr(getDatabase(), value, DataType.VARCHAR);
         return new DBCompareColExpr(this.lower(), DBCmpType.LIKE, expr.lower());
     }
 
@@ -374,8 +374,8 @@ public abstract class DBColumnExpr extends DBExpr
      */
     public DBCompareColExpr like(String value, char escape)
     {
-        DBValueExpr  textExpr = new DBValueExpr(getDatabase(), value, DataType.TEXT);
-        DBFuncExpr escapeExpr = new DBFuncExpr(textExpr, DBDatabaseDriver.SQL_FUNC_ESCAPE, new Object[] { String.valueOf(escape) }, getUpdateColumn(), false, DataType.TEXT );
+        DBValueExpr  textExpr = new DBValueExpr(getDatabase(), value, DataType.VARCHAR);
+        DBFuncExpr escapeExpr = new DBFuncExpr(textExpr, DBDatabaseDriver.SQL_FUNC_ESCAPE, new Object[] { String.valueOf(escape) }, getUpdateColumn(), false, DataType.VARCHAR );
         return cmp(DBCmpType.LIKE, escapeExpr);
     }
 
@@ -1168,7 +1168,7 @@ public abstract class DBColumnExpr extends DBExpr
      */
     public DBColumnExpr toChar()
     {
-        return convertTo(DataType.TEXT);
+        return convertTo(DataType.VARCHAR);
     }
 
     /**
@@ -1181,7 +1181,7 @@ public abstract class DBColumnExpr extends DBExpr
      */
     public DBColumnExpr toChar(String format)
     {
-        return convertTo(DataType.TEXT, format);
+        return convertTo(DataType.VARCHAR, format);
     }
 
     /**
diff --git a/empire-db/src/main/java/org/apache/empire/db/DBDDLGenerator.java b/empire-db/src/main/java/org/apache/empire/db/DBDDLGenerator.java
index 26ba970..09124be 100644
--- a/empire-db/src/main/java/org/apache/empire/db/DBDDLGenerator.java
+++ b/empire-db/src/main/java/org/apache/empire/db/DBDDLGenerator.java
@@ -108,7 +108,7 @@ public abstract class DBDDLGenerator<T extends DBDatabaseDriver>
                     sql.append(DATATYPE_INTEGER);  // Default integer length
             }
                 break;
-            case TEXT:
+            case VARCHAR:
             case CHAR:
             {   // Char or Varchar
                 sql.append((type==DataType.CHAR) ? DATATYPE_CHAR : DATATYPE_VARCHAR);
diff --git a/empire-db/src/main/java/org/apache/empire/db/DBDatabase.java b/empire-db/src/main/java/org/apache/empire/db/DBDatabase.java
index b33d03b..5554258 100644
--- a/empire-db/src/main/java/org/apache/empire/db/DBDatabase.java
+++ b/empire-db/src/main/java/org/apache/empire/db/DBDatabase.java
@@ -534,7 +534,7 @@ public abstract class DBDatabase extends DBObject
      */
     public DBValueExpr getValueExpr(String value)
     {
-        return new DBValueExpr(this, value, DataType.TEXT);
+        return new DBValueExpr(this, value, DataType.VARCHAR);
     }
 
     /**
@@ -1063,7 +1063,7 @@ public abstract class DBDatabase extends DBObject
      */
     public final String querySingleString(String sqlCmd, Object[] sqlParams, String defaultValue, Connection conn)
     { 
-        Object value = querySingleValue(sqlCmd, sqlParams, DataType.TEXT, conn);
+        Object value = querySingleValue(sqlCmd, sqlParams, DataType.VARCHAR, conn);
         return (ObjectUtils.isEmpty(value) ? defaultValue : value.toString());
     }
     
@@ -1094,7 +1094,7 @@ public abstract class DBDatabase extends DBObject
      */
     public final String querySingleString(DBCommand cmd, Connection conn)
     { 
-        Object value = querySingleValue(cmd.getSelect(), cmd.getParamValues(), DataType.TEXT, conn);
+        Object value = querySingleValue(cmd.getSelect(), cmd.getParamValues(), DataType.VARCHAR, conn);
 		if (value==ObjectUtils.NO_VALUE)
 			throw new QueryNoResultException(cmd.getSelect());
 		return StringUtils.toString(value, "");
@@ -1659,7 +1659,7 @@ public abstract class DBDatabase extends DBObject
         if (value instanceof DBColumnExpr)
             return ((DBColumnExpr)value).getDataType();
         if (value instanceof String)
-            return DataType.TEXT;
+            return DataType.VARCHAR;
         if ((value instanceof Integer) || (value instanceof Long))
             return DataType.INTEGER;
         if (value instanceof Number)
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 1a43600..eb06f7a 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
@@ -153,7 +153,7 @@ public abstract class DBDatabaseDriver implements Serializable
         {
             super(tableName, db);
             // Add all Colums
-            C_SEQNAME   = addColumn("SeqName",  DataType.TEXT,      40, DataMode.NotNull);
+            C_SEQNAME   = addColumn("SeqName",  DataType.VARCHAR,   40, DataMode.NotNull);
             C_SEQVALUE  = addColumn("SeqValue", DataType.INTEGER,    0, DataMode.NotNull);
             C_TIMESTAMP = addColumn("SeqTime",  DataType.DATETIME,   0, DataMode.NotNull);
             // Primary Key
@@ -727,7 +727,7 @@ public abstract class DBDatabaseDriver implements Serializable
                     return getSQLDateTimeString(value, SQL_DATE_TEMPLATE, SQL_DATE_PATTERN, SQL_CURRENT_DATETIME);
                 // Complete Date-Time Object with time 
                 return getSQLDateTimeString(value, SQL_DATETIME_TEMPLATE, SQL_DATETIME_PATTERN, SQL_CURRENT_DATETIME);
-            case TEXT:
+            case VARCHAR:
             case CHAR:
             case CLOB:
             case UNIQUEID:
diff --git a/empire-db/src/main/java/org/apache/empire/db/DBExpr.java b/empire-db/src/main/java/org/apache/empire/db/DBExpr.java
index f2b43fb..8abc46c 100644
--- a/empire-db/src/main/java/org/apache/empire/db/DBExpr.java
+++ b/empire-db/src/main/java/org/apache/empire/db/DBExpr.java
@@ -134,6 +134,7 @@ public abstract class DBExpr extends DBObject
             case INTEGER:
                 return Long.class;
             case TEXT:
+            case VARCHAR:
             case CLOB:
                 return String.class;
             case DATE:
diff --git a/empire-db/src/main/java/org/apache/empire/db/DBTableColumn.java b/empire-db/src/main/java/org/apache/empire/db/DBTableColumn.java
index d23c9ad..7b2853c 100644
--- a/empire-db/src/main/java/org/apache/empire/db/DBTableColumn.java
+++ b/empire-db/src/main/java/org/apache/empire/db/DBTableColumn.java
@@ -466,6 +466,7 @@ public class DBTableColumn extends DBColumn
                 break;
 
             case TEXT:
+            case VARCHAR:
             case CHAR:
                 if (value!=null && value.getClass().isEnum())
                 {   // check enum
diff --git a/empire-db/src/main/java/org/apache/empire/db/derby/DBDatabaseDriverDerby.java b/empire-db/src/main/java/org/apache/empire/db/derby/DBDatabaseDriverDerby.java
index 50fa713..aee4932 100644
--- a/empire-db/src/main/java/org/apache/empire/db/derby/DBDatabaseDriverDerby.java
+++ b/empire-db/src/main/java/org/apache/empire/db/derby/DBDatabaseDriverDerby.java
@@ -250,11 +250,13 @@ public class DBDatabaseDriverDerby extends DBDatabaseDriver
            case BOOL:      return "CAST(? AS UNSIGNED)";
            case INTEGER:   return "CAST(? AS SIGNED)";
            case DECIMAL:   return "CAST(? AS DECIMAL)";
-           case FLOAT:    return "CAST(? AS DECIMAL)";
+           case FLOAT:     return "CAST(? AS DECIMAL)";
            case DATE:      return "CAST(? AS DATE)";
            case DATETIME:  return "CAST(? AS TIMESTAMP)";
            // Convert to text
            case TEXT:
+           case VARCHAR:
+           case CHAR:
                 return "CAST(? AS CHAR)";
            case BLOB:
                 return "CAST(? AS BLOB)";
diff --git a/empire-db/src/main/java/org/apache/empire/db/expr/column/DBConcatExpr.java b/empire-db/src/main/java/org/apache/empire/db/expr/column/DBConcatExpr.java
index cc8ca02..e674ae9 100644
--- a/empire-db/src/main/java/org/apache/empire/db/expr/column/DBConcatExpr.java
+++ b/empire-db/src/main/java/org/apache/empire/db/expr/column/DBConcatExpr.java
@@ -72,7 +72,7 @@ public class DBConcatExpr extends DBColumnExpr
     @Override
     public DataType getDataType()
     {
-        return DataType.TEXT;
+        return DataType.VARCHAR;
     }
 
     @Override
diff --git a/empire-db/src/main/java/org/apache/empire/db/h2/DBDatabaseDriverH2.java b/empire-db/src/main/java/org/apache/empire/db/h2/DBDatabaseDriverH2.java
index 3a67d6f..dfdfb72 100644
--- a/empire-db/src/main/java/org/apache/empire/db/h2/DBDatabaseDriverH2.java
+++ b/empire-db/src/main/java/org/apache/empire/db/h2/DBDatabaseDriverH2.java
@@ -303,6 +303,8 @@ public class DBDatabaseDriverH2 extends DBDatabaseDriver
            case DATETIME:  return "CAST(? AS DATETIME)";
            // Convert to text
            case TEXT:
+           case VARCHAR:
+           case CHAR:
                 return "CAST(? AS CHAR)";
            case BLOB:
                 return "CAST(? AS BLOB)";
diff --git a/empire-db/src/main/java/org/apache/empire/db/hsql/DBDatabaseDriverHSql.java b/empire-db/src/main/java/org/apache/empire/db/hsql/DBDatabaseDriverHSql.java
index 7212fab..0c45e13 100644
--- a/empire-db/src/main/java/org/apache/empire/db/hsql/DBDatabaseDriverHSql.java
+++ b/empire-db/src/main/java/org/apache/empire/db/hsql/DBDatabaseDriverHSql.java
@@ -194,6 +194,7 @@ public class DBDatabaseDriverHSql extends DBDatabaseDriver
              */
             // Convert to text
             case TEXT:
+            case VARCHAR:
             case CHAR:
                 if (format != null)
                 { // Convert using a format string
diff --git a/empire-db/src/main/java/org/apache/empire/db/mysql/DBDatabaseDriverMySQL.java b/empire-db/src/main/java/org/apache/empire/db/mysql/DBDatabaseDriverMySQL.java
index f893582..836d7ea 100644
--- a/empire-db/src/main/java/org/apache/empire/db/mysql/DBDatabaseDriverMySQL.java
+++ b/empire-db/src/main/java/org/apache/empire/db/mysql/DBDatabaseDriverMySQL.java
@@ -1063,6 +1063,8 @@ public class DBDatabaseDriverMySQL extends DBDatabaseDriver
            case DATETIME:  return "CAST(? AS DATETIME)";
            // Convert to text
            case TEXT:
+           case VARCHAR:
+           case CHAR:
                if (format != null)
                { // Convert using a format string
                    return "CAST(? AS CHAR " + format.toString() + ")";
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 e6c9b5b..6c00e7a 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
@@ -223,6 +223,7 @@ public class DBDatabaseDriverOracle extends DBDatabaseDriver
              */
             // Convert to text
             case TEXT:
+            case VARCHAR:
             case CHAR:
             case CLOB:
                 if (format != null)
diff --git a/empire-db/src/main/java/org/apache/empire/db/oracle/OracleDDLGenerator.java b/empire-db/src/main/java/org/apache/empire/db/oracle/OracleDDLGenerator.java
index d265932..94176ef 100644
--- a/empire-db/src/main/java/org/apache/empire/db/oracle/OracleDDLGenerator.java
+++ b/empire-db/src/main/java/org/apache/empire/db/oracle/OracleDDLGenerator.java
@@ -66,6 +66,7 @@ public class OracleDDLGenerator extends DBDDLGenerator<DBDatabaseDriverOracle>
         switch (type)
         {
             case TEXT:
+            case VARCHAR:
             case CHAR:
             {   // Char or Varchar
                 sql.append((type==DataType.CHAR) ? DATATYPE_CHAR : DATATYPE_VARCHAR);
diff --git a/empire-db/src/main/java/org/apache/empire/db/oracle/OracleDataDictionnary.java b/empire-db/src/main/java/org/apache/empire/db/oracle/OracleDataDictionnary.java
index 2462215..753e538 100644
--- a/empire-db/src/main/java/org/apache/empire/db/oracle/OracleDataDictionnary.java
+++ b/empire-db/src/main/java/org/apache/empire/db/oracle/OracleDataDictionnary.java
@@ -99,7 +99,7 @@ public class OracleDataDictionnary {
      */
     public OracleDataDictionnary() {
         dataTypeMapping = new HashMap<String, DataType[]>();
-        dataTypeMapping.put("VARCHAR2", new DataType[] { DataType.TEXT });
+        dataTypeMapping.put("VARCHAR2", new DataType[] { DataType.VARCHAR });
         dataTypeMapping.put("CHAR",     new DataType[] { DataType.CHAR, DataType.BOOL });
         dataTypeMapping.put("NUMBER",   new DataType[] { DataType.DECIMAL, DataType.FLOAT, 
                                                          DataType.INTEGER, DataType.AUTOINC, DataType.BOOL });
diff --git a/empire-db/src/main/java/org/apache/empire/db/oracle/OracleSYSDatabase.java b/empire-db/src/main/java/org/apache/empire/db/oracle/OracleSYSDatabase.java
index 4cb7c0d..258ce37 100644
--- a/empire-db/src/main/java/org/apache/empire/db/oracle/OracleSYSDatabase.java
+++ b/empire-db/src/main/java/org/apache/empire/db/oracle/OracleSYSDatabase.java
@@ -48,10 +48,10 @@ public class OracleSYSDatabase extends DBDatabase
         {
             super("ALL_TAB_COMMENTS", db);
             // add all Colums
-            C_OWNER = addColumn("OWNER", DataType.TEXT, 50, false);
-            C_TABLE_NAME = addColumn("TABLE_NAME", DataType.TEXT, 50, false);
-            C_TABLE_TYPE = addColumn("TABLE_TYPE", DataType.TEXT, 50, false);
-            C_COMMENTS = addColumn("COMMENTS", DataType.TEXT, 500, false);
+            C_OWNER = addColumn("OWNER", DataType.VARCHAR, 50, false);
+            C_TABLE_NAME = addColumn("TABLE_NAME", DataType.VARCHAR, 50, false);
+            C_TABLE_TYPE = addColumn("TABLE_TYPE", DataType.VARCHAR, 50, false);
+            C_COMMENTS = addColumn("COMMENTS", DataType.VARCHAR, 500, false);
         }
     }
 
@@ -72,11 +72,11 @@ public class OracleSYSDatabase extends DBDatabase
             super("ALL_CONSTRAINTS", db);
             // add all Colums
 
-            C_CONSTRAINT_NAME = addColumn("CONSTRAINT_NAME", DataType.TEXT, 100, false);
-            C_TABLE_NAME = addColumn("TABLE_NAME", DataType.TEXT, 100, false);
-            C_R_CONSTRAINT_NAME = addColumn("R_CONSTRAINT_NAME", DataType.TEXT, 100, false);
-            C_CONSTRAINT_TYPE = addColumn("CONSTRAINT_TYPE", DataType.TEXT, 1, false);
-            C_STATUS = addColumn("STATUS", DataType.TEXT, 20, false);
+            C_CONSTRAINT_NAME = addColumn("CONSTRAINT_NAME", DataType.VARCHAR, 100, false);
+            C_TABLE_NAME = addColumn("TABLE_NAME", DataType.VARCHAR, 100, false);
+            C_R_CONSTRAINT_NAME = addColumn("R_CONSTRAINT_NAME", DataType.VARCHAR, 100, false);
+            C_CONSTRAINT_TYPE = addColumn("CONSTRAINT_TYPE", DataType.VARCHAR, 1, false);
+            C_STATUS = addColumn("STATUS", DataType.VARCHAR, 20, false);
         }
     }
 
@@ -96,10 +96,10 @@ public class OracleSYSDatabase extends DBDatabase
             super("USER_CONS_COLUMNS", db);
             // add all Colums
 
-            C_CONSTRAINT_NAME = addColumn("CONSTRAINT_NAME", DataType.TEXT, 100, false);
-            C_TABLE_NAME = addColumn("TABLE_NAME", DataType.TEXT, 100, false);
-            C_COLUMN_NAME = addColumn("COLUMN_NAME", DataType.TEXT, 100, false);
-            C_OWNER = addColumn("OWNER", DataType.TEXT, 100, false);
+            C_CONSTRAINT_NAME = addColumn("CONSTRAINT_NAME", DataType.VARCHAR, 100, false);
+            C_TABLE_NAME = addColumn("TABLE_NAME", DataType.VARCHAR, 100, false);
+            C_COLUMN_NAME = addColumn("COLUMN_NAME", DataType.VARCHAR, 100, false);
+            C_OWNER = addColumn("OWNER", DataType.VARCHAR, 100, false);
             setPrimaryKey(C_CONSTRAINT_NAME);
         }
     }
@@ -126,13 +126,13 @@ public class OracleSYSDatabase extends DBDatabase
         {
             super("ALL_TAB_COLUMNS", db);
             // add all Colums
-            C_OWNER = addColumn("OWNER", DataType.TEXT, 30, false);
-            C_TABLE_NAME = addColumn("TABLE_NAME", DataType.TEXT, 30, false);
-            C_COLUMN_NAME = addColumn("COLUMN_NAME", DataType.TEXT, 30, false);
-            C_DATA_TYPE = addColumn("DATA_TYPE", DataType.TEXT, 50, false);
-            C_DATA_TYPE_MOD = addColumn("DATA_TYPE_MOD", DataType.TEXT, 50, false);
-            C_DATA_TYPE_OWNER = addColumn("DATA_TYPE_OWNER", DataType.TEXT, 50, false);
-            C_NULLABLE = addColumn("NULLABLE", DataType.TEXT, 1, false);
+            C_OWNER = addColumn("OWNER", DataType.VARCHAR, 30, false);
+            C_TABLE_NAME = addColumn("TABLE_NAME", DataType.VARCHAR, 30, false);
+            C_COLUMN_NAME = addColumn("COLUMN_NAME", DataType.VARCHAR, 30, false);
+            C_DATA_TYPE = addColumn("DATA_TYPE", DataType.VARCHAR, 50, false);
+            C_DATA_TYPE_MOD = addColumn("DATA_TYPE_MOD", DataType.VARCHAR, 50, false);
+            C_DATA_TYPE_OWNER = addColumn("DATA_TYPE_OWNER", DataType.VARCHAR, 50, false);
+            C_NULLABLE = addColumn("NULLABLE", DataType.VARCHAR, 1, false);
             C_DATA_LENGTH = addColumn("DATA_LENGTH", DataType.DECIMAL, 0, false);
             C_DATA_PRECISION = addColumn("DATA_PRECISION", DataType.DECIMAL, 0, false);
             C_DATA_SCALE = addColumn("DATA_SCALE", DataType.DECIMAL, 0, false);
@@ -155,10 +155,10 @@ public class OracleSYSDatabase extends DBDatabase
         {
             super("ALL_COL_COMMENTS", db);
             // add all Colums
-            C_OWNER = addColumn("OWNER", DataType.TEXT, 50, false);
-            C_TABLE_NAME = addColumn("TABLE_NAME", DataType.TEXT, 50, false);
-            C_COLUMN_NAME = addColumn("COLUMN_NAME", DataType.TEXT, 50, false);
-            C_COMMENTS = addColumn("COMMENTS", DataType.TEXT, 500, false);
+            C_OWNER = addColumn("OWNER", DataType.VARCHAR, 50, false);
+            C_TABLE_NAME = addColumn("TABLE_NAME", DataType.VARCHAR, 50, false);
+            C_COLUMN_NAME = addColumn("COLUMN_NAME", DataType.VARCHAR, 50, false);
+            C_COMMENTS = addColumn("COMMENTS", DataType.VARCHAR, 500, false);
         }
     }
 
diff --git a/empire-db/src/main/java/org/apache/empire/db/postgresql/DBDatabaseDriverPostgreSQL.java b/empire-db/src/main/java/org/apache/empire/db/postgresql/DBDatabaseDriverPostgreSQL.java
index dbde9ac..afe811d 100644
--- a/empire-db/src/main/java/org/apache/empire/db/postgresql/DBDatabaseDriverPostgreSQL.java
+++ b/empire-db/src/main/java/org/apache/empire/db/postgresql/DBDatabaseDriverPostgreSQL.java
@@ -398,11 +398,13 @@ public class DBDatabaseDriverPostgreSQL extends DBDatabaseDriver
             case BOOL:     return "CAST(? AS BOOL)";
             case INTEGER:  return "CAST(? AS INTEGER)";
             case DECIMAL:  return "CAST(? AS DECIMAL)";
-            case FLOAT:   return "CAST(? AS DOUBLE PRECISION)";
+            case FLOAT:    return "CAST(? AS DOUBLE PRECISION)";
             case DATE:     return "CAST(? AS DATE)";
             case DATETIME: return "CAST(? AS TIMESTAMP)";
                 // Convert to text
-            case TEXT:     return "CAST(? AS CHAR)";
+            case TEXT:
+            case VARCHAR:  
+            case CHAR:     return "CAST(? AS CHAR)";
             case BLOB:     return "CAST(? AS bytea)";
             case CLOB:     return "CAST(? AS TEXT)";
                 // Unknown Type
diff --git a/empire-db/src/main/java/org/apache/empire/db/sqlite/DBDatabaseDriverSQLite.java b/empire-db/src/main/java/org/apache/empire/db/sqlite/DBDatabaseDriverSQLite.java
index c5206e7..e62935e 100644
--- a/empire-db/src/main/java/org/apache/empire/db/sqlite/DBDatabaseDriverSQLite.java
+++ b/empire-db/src/main/java/org/apache/empire/db/sqlite/DBDatabaseDriverSQLite.java
@@ -502,6 +502,7 @@ public class DBDatabaseDriverSQLite extends DBDatabaseDriver
         {
         // Convert to text
             case TEXT:
+            case VARCHAR:
             case CHAR:
                 if (format != null)
                 { // Convert using a format string
diff --git a/empire-db/src/main/java/org/apache/empire/db/sqlserver/DBDatabaseDriverMSSQL.java b/empire-db/src/main/java/org/apache/empire/db/sqlserver/DBDatabaseDriverMSSQL.java
index 1bae19f..069a0e4 100644
--- a/empire-db/src/main/java/org/apache/empire/db/sqlserver/DBDatabaseDriverMSSQL.java
+++ b/empire-db/src/main/java/org/apache/empire/db/sqlserver/DBDatabaseDriverMSSQL.java
@@ -372,6 +372,9 @@ public class DBDatabaseDriverMSSQL extends DBDatabaseDriver
                                                    : "convert(datetime,  ?, 121)";
            // Convert to text
            case TEXT:
+           case VARCHAR:
+           case CHAR:
+           case CLOB:
                 // Date-Time-Format "YYYY-MM-DD"
                 if (srcType==DataType.DATE)
                     return "convert(nvarchar, ?, 111)";
diff --git a/empire-db/src/main/java/org/apache/empire/db/sqlserver/MSSqlDDLGenerator.java b/empire-db/src/main/java/org/apache/empire/db/sqlserver/MSSqlDDLGenerator.java
index bf8c1eb..222a274 100644
--- a/empire-db/src/main/java/org/apache/empire/db/sqlserver/MSSqlDDLGenerator.java
+++ b/empire-db/src/main/java/org/apache/empire/db/sqlserver/MSSqlDDLGenerator.java
@@ -72,6 +72,7 @@ public class MSSqlDDLGenerator extends DBDDLGenerator<DBDatabaseDriverMSSQL>
                 }
                 break;
             case TEXT:
+            case VARCHAR:
             case CHAR:
             {   // Char or Varchar
                 if (type==DataType.CHAR)
diff --git a/empire-db/src/main/java/org/apache/empire/db/validation/DBModelChecker.java b/empire-db/src/main/java/org/apache/empire/db/validation/DBModelChecker.java
index 20f0fd2..e107974 100644
--- a/empire-db/src/main/java/org/apache/empire/db/validation/DBModelChecker.java
+++ b/empire-db/src/main/java/org/apache/empire/db/validation/DBModelChecker.java
@@ -350,6 +350,7 @@ public class DBModelChecker
                 checkAutoIncColumn(column, remoteColumn, handler);
                 break;
             case TEXT:
+            case VARCHAR:
                 checkTextColumn(column, remoteColumn, handler);
                 break;
             case DATE:
@@ -599,7 +600,7 @@ public class DBModelChecker
                 empireType = DataType.INTEGER;
                 break;
             case Types.VARCHAR:
-                empireType = DataType.TEXT;
+                empireType = DataType.VARCHAR;
                 break;
             case Types.DATE:
                 empireType = DataType.DATE;
diff --git a/empire-db/src/test/java/org/apache/empire/db/CompanyDB.java b/empire-db/src/test/java/org/apache/empire/db/CompanyDB.java
index d24c471..0fb0d6e 100644
--- a/empire-db/src/test/java/org/apache/empire/db/CompanyDB.java
+++ b/empire-db/src/test/java/org/apache/empire/db/CompanyDB.java
@@ -48,9 +48,9 @@ public class CompanyDB extends DBDatabase
             super("DEPARTMENTS", db);
             // ID
             ID              = addColumn("DEPARTMENT_ID",    DataType.AUTOINC,       0, DataMode.AutoGenerated, "DEP_ID_SEQUENCE");
-            NAME            = addColumn("NAME",             DataType.TEXT,         80, DataMode.NotNull);
-            HEAD            = addColumn("HEAD",             DataType.TEXT,         80, DataMode.Nullable);
-            BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.TEXT,          4, DataMode.NotNull, "ITTK");
+            NAME            = addColumn("NAME",             DataType.VARCHAR,      80, DataMode.NotNull);
+            HEAD            = addColumn("HEAD",             DataType.VARCHAR,      80, DataMode.Nullable);
+            BUSINESS_UNIT   = addColumn("BUSINESS_UNIT",    DataType.VARCHAR,       4, DataMode.NotNull, "ITTK");
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,      0, DataMode.NotNull);
 
             // Primary Key
@@ -86,14 +86,14 @@ public class CompanyDB extends DBDatabase
             super("EMPLOYEES", db);
             // ID
             ID              = addColumn("EMPLOYEE_ID",      DataType.AUTOINC,      0, DataMode.NotNull, "EMPLOYEE_ID_SEQUENCE");
-            SALUTATION      = addColumn("SALUTATION",       DataType.TEXT,        20, DataMode.Nullable);
-            FIRSTNAME       = addColumn("FIRSTNAME",        DataType.TEXT,        40, DataMode.NotNull);
-            LASTNAME        = addColumn("LASTNAME",         DataType.TEXT,        40, DataMode.NotNull);
+            SALUTATION      = addColumn("SALUTATION",       DataType.VARCHAR,     20, DataMode.Nullable);
+            FIRSTNAME       = addColumn("FIRSTNAME",        DataType.VARCHAR,     40, DataMode.NotNull);
+            LASTNAME        = addColumn("LASTNAME",         DataType.VARCHAR,     40, DataMode.NotNull);
             DATE_OF_BIRTH   = addColumn("DATE_OF_BIRTH",    DataType.DATE,         0, DataMode.Nullable);
             DEPARTMENT_ID   = addColumn("ID",               DataType.INTEGER,      0, DataMode.NotNull);
-            GENDER          = addColumn("GENDER",           DataType.TEXT,         1, DataMode.Nullable);
-            PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.TEXT,        40, DataMode.Nullable);
-            EMAIL           = addColumn("EMAIL",            DataType.TEXT,        80, DataMode.Nullable);
+            GENDER          = addColumn("GENDER",           DataType.VARCHAR,      1, DataMode.Nullable);
+            PHONE_NUMBER    = addColumn("PHONE_NUMBER",     DataType.VARCHAR,     40, DataMode.Nullable);
+            EMAIL           = addColumn("EMAIL",            DataType.VARCHAR,     80, DataMode.Nullable);
             SALARY          = addColumn("SALARY",           DataType.DECIMAL,   10.2, DataMode.Nullable);
             RETIRED         = addColumn("RETIRED",          DataType.BOOL,         0, DataMode.NotNull, false);
             UPDATE_TIMESTAMP= addColumn("UPDATE_TIMESTAMP", DataType.DATETIME,     0, DataMode.NotNull);
diff --git a/empire-db/src/test/java/org/apache/empire/db/DBCommandTest.java b/empire-db/src/test/java/org/apache/empire/db/DBCommandTest.java
index 2159013..d125fb0 100644
--- a/empire-db/src/test/java/org/apache/empire/db/DBCommandTest.java
+++ b/empire-db/src/test/java/org/apache/empire/db/DBCommandTest.java
@@ -79,7 +79,7 @@ public class DBCommandTest
             super("MOCK_TABLE", db);
             // add Columns
             COL1 = addColumn("COL1", DataType.INTEGER,   0, true);
-            COL2 = addColumn("COL2", DataType.TEXT,     20, true);
+            COL2 = addColumn("COL2", DataType.VARCHAR,  20, true);
             COL3 = addColumn("COL3", DataType.DATETIME,  0, false);
         }
     }
diff --git a/empire-db/src/test/java/org/apache/empire/db/SerializeTest.java b/empire-db/src/test/java/org/apache/empire/db/SerializeTest.java
index 30bdc3a..7567100 100644
--- a/empire-db/src/test/java/org/apache/empire/db/SerializeTest.java
+++ b/empire-db/src/test/java/org/apache/empire/db/SerializeTest.java
@@ -89,7 +89,7 @@ public class SerializeTest {
         super("testtable", db);
         this.C_ID = addColumn("id", DataType.INTEGER, 0, true);
         setPrimaryKey(C_ID);
-        this.C_TEXT = addColumn("text", DataType.TEXT, 255, false);
+        this.C_TEXT = addColumn("text", DataType.VARCHAR, 255, false);
       }
     }
     static class TestView extends DBView {
diff --git a/empire-db/src/test/java/org/apache/empire/db/hsql/DBDatabaseDriverHSqlTest.java b/empire-db/src/test/java/org/apache/empire/db/hsql/DBDatabaseDriverHSqlTest.java
index 00b50d1..da10b78 100644
--- a/empire-db/src/test/java/org/apache/empire/db/hsql/DBDatabaseDriverHSqlTest.java
+++ b/empire-db/src/test/java/org/apache/empire/db/hsql/DBDatabaseDriverHSqlTest.java
@@ -157,7 +157,7 @@ public class DBDatabaseDriverHSqlTest{
         {
             super("DATA", db);
             ID    = addColumn("DATA_ID",  		DataType.AUTOINC,       0, DataMode.AutoGenerated);
-            VALUE = addColumn("VALUE",          DataType.TEXT,          256, DataMode.NotNull);
+            VALUE = addColumn("VALUE",          DataType.VARCHAR,     256, DataMode.NotNull);
             setPrimaryKey(ID);
         }
     }
diff --git a/empire-db/src/test/java/org/apache/empire/db/mssql/DBDatabaseDriverMSSqlDateTest.java b/empire-db/src/test/java/org/apache/empire/db/mssql/DBDatabaseDriverMSSqlDateTest.java
index b0afe90..005f93d 100644
--- a/empire-db/src/test/java/org/apache/empire/db/mssql/DBDatabaseDriverMSSqlDateTest.java
+++ b/empire-db/src/test/java/org/apache/empire/db/mssql/DBDatabaseDriverMSSqlDateTest.java
@@ -164,14 +164,10 @@ public class DBDatabaseDriverMSSqlDateTest {
 
 			public UserInfoTable(DBDatabase db) {
 				super("USER_INFO", db);
-				ID = addColumn("DEPARTMENT_ID", DataType.AUTOINC, 0,
-						DataMode.AutoGenerated);
-				USER = addColumn("USER", DataType.TEXT, 80, DataMode.NotNull);
-				REG_DATE = addColumn("REG_DATE", DataType.DATE, 80,
-						DataMode.NotNull);
-				LAST_LOGIN = addColumn("LAST_LOGIN", DataType.DATETIME, 0,
-						DataMode.Nullable);
-
+				ID          = addColumn("DEPARTMENT_ID",    DataType.AUTOINC,    0, DataMode.AutoGenerated);
+				USER        = addColumn("USER",             DataType.VARCHAR,   80, DataMode.NotNull);
+				REG_DATE    = addColumn("REG_DATE",         DataType.DATE,      80, DataMode.NotNull);
+				LAST_LOGIN  = addColumn("LAST_LOGIN",       DataType.DATETIME,   0, DataMode.Nullable);
 				// Primary Key
 				setPrimaryKey(ID);
 
diff --git a/empire-db/src/test/java/org/apache/empire/db/mysql/DBDatabaseDriverMySQLTest.java b/empire-db/src/test/java/org/apache/empire/db/mysql/DBDatabaseDriverMySQLTest.java
index 60b7458..0b353dc 100644
--- a/empire-db/src/test/java/org/apache/empire/db/mysql/DBDatabaseDriverMySQLTest.java
+++ b/empire-db/src/test/java/org/apache/empire/db/mysql/DBDatabaseDriverMySQLTest.java
@@ -94,8 +94,8 @@ public class DBDatabaseDriverMySQLTest {
         assertEquals("CAST(? AS DATETIME)", driver.getConvertPhrase(DataType.DATETIME, null, "test"));
         
         // TEXT
-        assertEquals("CAST(? AS CHAR CHARACTER SET cp1250)", driver.getConvertPhrase(DataType.TEXT, null, "CHARACTER SET cp1250"));
-        assertEquals("CAST(? AS CHAR)", driver.getConvertPhrase(DataType.TEXT, null, null));
+        assertEquals("CAST(? AS CHAR CHARACTER SET cp1250)", driver.getConvertPhrase(DataType.VARCHAR, null, "CHARACTER SET cp1250"));
+        assertEquals("CAST(? AS CHAR)", driver.getConvertPhrase(DataType.VARCHAR, null, null));
         
         // BLOB
         assertEquals("CAST(? AS BLOB)", driver.getConvertPhrase(DataType.BLOB, null, null));
diff --git a/empire-db/src/test/java/org/apache/empire/db/sqlite/DBDatabaseDriverSQLiteTest.java b/empire-db/src/test/java/org/apache/empire/db/sqlite/DBDatabaseDriverSQLiteTest.java
index 03e5dbe..649b666 100644
--- a/empire-db/src/test/java/org/apache/empire/db/sqlite/DBDatabaseDriverSQLiteTest.java
+++ b/empire-db/src/test/java/org/apache/empire/db/sqlite/DBDatabaseDriverSQLiteTest.java
@@ -156,7 +156,7 @@ public class DBDatabaseDriverSQLiteTest{
         {
             super("DATA", db);
             ID    = addColumn("DATA_ID",  		DataType.AUTOINC,       0, DataMode.AutoGenerated);
-            VALUE = addColumn("VALUE",          DataType.TEXT,          256, DataMode.NotNull);
+            VALUE = addColumn("VALUE",          DataType.VARCHAR,     256, DataMode.NotNull);
             setPrimaryKey(ID);
         }
     }