Repository: trafodion
Updated Branches:
  refs/heads/master 7eb3ea39b -> 699583672


TRAFODION-2991 jdbct4 not support nchar & nvarchar


Project: http://git-wip-us.apache.org/repos/asf/trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafodion/commit/6324e403
Tree: http://git-wip-us.apache.org/repos/asf/trafodion/tree/6324e403
Diff: http://git-wip-us.apache.org/repos/asf/trafodion/diff/6324e403

Branch: refs/heads/master
Commit: 6324e4038965fa827507ca158bd1545bbf56212c
Parents: cdadf5e
Author: aven <[email protected]>
Authored: Wed Mar 14 10:49:31 2018 +0800
Committer: aven <[email protected]>
Committed: Wed Mar 14 10:49:31 2018 +0800

----------------------------------------------------------------------
 .../jdbc/t4/TrafT4PreparedStatement.java        | 21 +++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/trafodion/blob/6324e403/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TrafT4PreparedStatement.java
----------------------------------------------------------------------
diff --git 
a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TrafT4PreparedStatement.java
 
b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TrafT4PreparedStatement.java
index ee1268d..0016510 100644
--- 
a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TrafT4PreparedStatement.java
+++ 
b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TrafT4PreparedStatement.java
@@ -1244,6 +1244,10 @@ public class TrafT4PreparedStatement extends 
TrafT4Statement implements java.sql
                        case Types.CLOB:
                                setString(parameterIndex, x.toString());
                                break;
+                       case Types.NCHAR:
+                       case Types.NVARCHAR:
+                           setNString(parameterIndex, x.toString());
+                           break;
                        case Types.VARBINARY:
                        case Types.BINARY:
                        case Types.LONGVARBINARY:
@@ -2517,8 +2521,23 @@ public class TrafT4PreparedStatement extends 
TrafT4Statement implements java.sql
 
        public void setNString(int parameterIndex, String value)
                        throws SQLException {
-               // TODO Auto-generated method stub
+           if (connection_.props_.t4Logger_.isLoggable(Level.FINE) == true) {
+            Object p[] = T4LoggingUtilities.makeParams(connection_.props_, 
parameterIndex, value);
+            connection_.props_.t4Logger_.logp(Level.FINE, 
"TrafT4PreparedStatement", "setNString", "", p);
+        }
+
+        validateSetInvocation(parameterIndex);
+        int dataType = inputDesc_[parameterIndex - 1].dataType_;
 
+        switch (dataType) {
+        case Types.CHAR:
+        case Types.VARCHAR:
+            addParamValue(parameterIndex, value);
+            break;
+        default:
+            throw TrafT4Messages.createSQLException(connection_.props_, 
connection_.getLocale(),
+                    "fetch_output_inconsistent", null);
+        }
        }
 
        public void setNCharacterStream(int parameterIndex, Reader value,

Reply via email to