Revision: 6264
http://squirrel-sql.svn.sourceforge.net/squirrel-sql/?rev=6264&view=rev
Author: manningr
Date: 2011-05-17 01:23:40 +0000 (Tue, 17 May 2011)
Log Message:
-----------
Create data script command now produces a properly formatted hex string for binary fields.
Modified Paths:
--------------
trunk/sql12/plugins/sqlscript/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlscript/table_script/CreateDataScriptCommand.java
Modified: trunk/sql12/plugins/sqlscript/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlscript/table_script/CreateDataScriptCommand.java
===================================================================
--- trunk/sql12/plugins/sqlscript/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlscript/table_script/CreateDataScriptCommand.java 2011-05-17 01:11:28 UTC (rev 6263)
+++ trunk/sql12/plugins/sqlscript/src/main/java/net/sourceforge/squirrel_sql/plugins/sqlscript/table_script/CreateDataScriptCommand.java 2011-05-17 01:23:40 UTC (rev 6264)
@@ -20,6 +20,7 @@
*/
import java.awt.event.WindowAdapter;
+import java.sql.Blob;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
@@ -203,6 +204,7 @@
throws SQLException
{
ResultSetMetaData metaData = srcResult.getMetaData();
+ final HibernateDialect dialect = DialectFactory.getDialect(_session.getMetaData());
int iColumnCount = metaData.getColumnCount();
ColumnInfo[] colInfo = new ColumnInfo[iColumnCount];
@@ -347,17 +349,34 @@
sbValues.append(getNullableComment(metaData, i+1));
}
}
+ else if (Types.BLOB == colInfo[i].sqlType
+ || Types.BINARY == colInfo[i].sqlType) {
+ if(fromResultSet) {
+ if(srcResult.wasNull()) {
+ sbValues.append("null");
+ } else {
+ byte[] binaryData = null;
+ if (Types.BLOB == colInfo[i].sqlType) {
+ Blob blobResult = srcResult.getBlob(i+1);
+ binaryData = blobResult.getBytes(1, (int)blobResult.length());
+ } else {
+ binaryData = srcResult.getBytes(i+1);
+ }
+ sbValues.append(dialect.getBinaryLiteralString(binaryData));
+ }
+ } else {
+ sbValues.append("'CAFEBABE'").append(getNullableComment(metaData, i+1));
+ }
+ }
else // Types.CHAR,
// Types.VARCHAR,
// Types.LONGVARCHAR,
- // Types.BINARY,
// Types.VARBINARY
// Types.LONGVARBINARY
// Types.NULL
// Types.JAVA_OBJECT
// Types.DISTINCT
// Types.ARRAY
- // Types.BLOB
// Types.CLOB
// Types.REF
// Types.DATALINK
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|