Revision: 5937
http://squirrel-sql.svn.sourceforge.net/squirrel-sql/?rev=5937&view=rev
Author: manningr
Date: 2010-10-30 17:56:07 +0000 (Sat, 30 Oct 2010)
Log Message:
-----------
Added support for SQL national language support types.
Modified Paths:
--------------
trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/dialects/DerbyDialectExt.java
trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/dialects/OracleDialectExt.java
Modified: trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/dialects/DerbyDialectExt.java
===================================================================
--- trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/dialects/DerbyDialectExt.java 2010-10-30 17:53:10 UTC (rev 5936)
+++ trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/dialects/DerbyDialectExt.java 2010-10-30 17:56:07 UTC (rev 5937)
@@ -85,10 +85,16 @@
registerColumnType(Types.LONGVARBINARY, 1073741823, "blob($l)");
registerColumnType(Types.LONGVARBINARY, "blob(1073741823)");
registerColumnType(Types.LONGVARCHAR, 32700, "long varchar");
+ registerColumnType(Types.LONGVARCHAR, 1073741823, "clob($l)");
// DB2 spec says max=2147483647, but the driver throws an exception
- registerColumnType(Types.LONGVARCHAR, 1073741823, "clob($l)");
registerColumnType(Types.LONGVARCHAR, "clob(1073741823)");
+
registerColumnType(Types.NUMERIC, "bigint");
+ registerColumnType(Types.NVARCHAR, 4000, "varchar($l)");
+ registerColumnType(Types.NVARCHAR, 32700, "long varchar");
+ registerColumnType(Types.NVARCHAR, 1073741823, "clob($l)");
+ // DB2 spec says max=2147483647, but the driver throws an exception
+ registerColumnType(Types.NVARCHAR, "clob(1073741823)");
registerColumnType(Types.REAL, "real");
registerColumnType(Types.SMALLINT, "smallint");
registerColumnType(Types.TIME, "time");
@@ -98,8 +104,8 @@
registerColumnType(Types.VARBINARY, "blob");
registerColumnType(Types.VARCHAR, 4000, "varchar($l)");
registerColumnType(Types.VARCHAR, 32700, "long varchar");
+ registerColumnType(Types.VARCHAR, 1073741823, "clob($l)");
// DB2 spec says max=2147483647, but the driver throws an exception
- registerColumnType(Types.VARCHAR, 1073741823, "clob($l)");
registerColumnType(Types.VARCHAR, "clob(1073741823)");
}
}
@@ -122,7 +128,6 @@
@Override
public boolean canPasteTo(final IDatabaseObjectInfo info)
{
- // TODO Auto-generated method stub
return true;
}
Modified: trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/dialects/OracleDialectExt.java
===================================================================
--- trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/dialects/OracleDialectExt.java 2010-10-30 17:53:10 UTC (rev 5936)
+++ trunk/sql12/fw/src/main/java/net/sourceforge/squirrel_sql/fw/dialects/OracleDialectExt.java 2010-10-30 17:56:07 UTC (rev 5937)
@@ -62,15 +62,21 @@
registerColumnType(Types.CHAR, 4000, "varchar2($l)");
registerColumnType(Types.CHAR, "clob");
registerColumnType(Types.CLOB, "clob");
+ registerColumnType(Types.NCLOB, "nclob");
registerColumnType(Types.DATE, "date");
registerColumnType(Types.DECIMAL, "decimal($p)");
registerColumnType(Types.DOUBLE, "float($p)");
registerColumnType(Types.FLOAT, "float($p)");
registerColumnType(Types.INTEGER, "int");
+ registerColumnType(Types.LONGNVARCHAR, 2000, "nvarchar2($l)");
+ registerColumnType(Types.LONGNVARCHAR, "nclob");
registerColumnType(Types.LONGVARBINARY, "blob");
registerColumnType(Types.LONGVARCHAR, 4000, "varchar2($l)");
registerColumnType(Types.LONGVARCHAR, "clob");
+ registerColumnType(Types.NCHAR, 2000, "nchar($l)");
registerColumnType(Types.NUMERIC, "number($p)");
+ registerColumnType(Types.NVARCHAR, 2000, "nvarchar2($l)");
+ registerColumnType(Types.NVARCHAR, "nclob");
registerColumnType(Types.REAL, "real");
registerColumnType(Types.SMALLINT, "smallint");
registerColumnType(Types.TIME, "date");
@@ -100,6 +106,27 @@
}
/**
+ * @see net.sourceforge.squirrel_sql.fw.dialects.CommonHibernateDialect#getJavaTypeForNativeType(java.lang.String)
+ */
+ @Override
+ public int getJavaTypeForNativeType(String nativeColumnTypeName)
+ {
+ if (nativeColumnTypeName.toLowerCase().equals("nvarchar2")) {
+ return Types.NVARCHAR;
+ }
+ if (nativeColumnTypeName.toLowerCase().equals("nchar")) {
+ return Types.NCHAR;
+ }
+ if (nativeColumnTypeName.toLowerCase().equals("nclob")) {
+ return Types.NCLOB;
+ }
+ if (nativeColumnTypeName.toLowerCase().startsWith("TIMESTAMP")) {
+ return Types.TIMESTAMP;
+ }
+ return super.getJavaTypeForNativeType(nativeColumnTypeName);
+ }
+
+ /**
* @see net.sourceforge.squirrel_sql.fw.dialects.CommonHibernateDialect#canPasteTo(net.sourceforge.squirrel_sql.fw.sql.IDatabaseObjectInfo)
*/
@Override
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|