You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafodion.apache.org by db...@apache.org on 2017/05/30 16:35:28 UTC
[2/3] incubator-trafodion git commit: change insert short to byte
when boolean
change insert short to byte when boolean
Project: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/commit/fee5a941
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/tree/fee5a941
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/diff/fee5a941
Branch: refs/heads/master
Commit: fee5a941bb486a3b500666e9de040fb5a3b541e6
Parents: e32f6b9
Author: mashengchen <ma...@gmail.com>
Authored: Thu May 25 06:30:52 2017 +0000
Committer: mashengchen <ma...@gmail.com>
Committed: Thu May 25 06:30:52 2017 +0000
----------------------------------------------------------------------
.../src/main/java/org/trafodion/jdbc/t4/Bytes.java | 5 +++++
.../org/trafodion/jdbc/t4/InterfaceStatement.java | 2 +-
.../trafodion/jdbc/t4/TrafT4PreparedStatement.java | 17 ++++++++++++++---
.../org/trafodion/jdbc/t4/TrafT4ResultSet.java | 3 +++
4 files changed, 23 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/fee5a941/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/Bytes.java
----------------------------------------------------------------------
diff --git a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/Bytes.java b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/Bytes.java
index 625bdff..a289bb3 100644
--- a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/Bytes.java
+++ b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/Bytes.java
@@ -122,6 +122,11 @@ class Bytes {
return value;
}
+ static int insertByte(byte[] array, int offset, byte value) {
+ array[offset] = value;
+ return offset + 1;
+ }
+
static int insertShort(byte[] array, int offset, short value, boolean swap) {
if (swap) {
array[offset + 1] = (byte) ((value >>> 8) & 0xff);
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/fee5a941/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InterfaceStatement.java
----------------------------------------------------------------------
diff --git a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InterfaceStatement.java b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InterfaceStatement.java
index 120f084..6ee93bf 100644
--- a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InterfaceStatement.java
+++ b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/InterfaceStatement.java
@@ -686,7 +686,7 @@ class InterfaceStatement {
case InterfaceResultSet.SQLTYPECODE_BOOLEAN:
tmpbd = Utility.getBigDecimalValue(locale, paramValue);
- Bytes.insertShort(values, noNullValue, tmpbd.shortValue(), this.ic_.getByteSwap());
+ Bytes.insertByte(values, noNullValue, tmpbd.byteValue());
break;
// You will not get this type, since server internally converts it
// SMALLINT, INTERGER or LARGEINT
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/fee5a941/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 04fa6aa..66323dc 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
@@ -720,11 +720,22 @@ public class TrafT4PreparedStatement extends TrafT4Statement implements java.sql
}
validateSetInvocation(parameterIndex);
inputDesc_[parameterIndex - 1].checkValidNumericConversion(connection_.getLocale());
- if (x) {
- addParamValue(parameterIndex, "1"); // true
+ int sqltype = inputDesc_[parameterIndex - 1].sqlDataType_;
+ Object valueObj = null;
+ if (sqltype == InterfaceResultSet.SQLTYPECODE_BOOLEAN) {
+ if (x) {
+ valueObj = 1;
+ } else {
+ valueObj = 0;
+ }
} else {
- addParamValue(parameterIndex, "0"); // false
+ if (x) {
+ valueObj = "1";
+ } else {
+ valueObj = "0";
+ }
}
+ addParamValue(parameterIndex, valueObj);
}
public void setByte(int parameterIndex, byte x) throws SQLException {
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/fee5a941/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TrafT4ResultSet.java
----------------------------------------------------------------------
diff --git a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TrafT4ResultSet.java b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TrafT4ResultSet.java
index a3d1826..e5864c9 100644
--- a/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TrafT4ResultSet.java
+++ b/core/conn/jdbcT4/src/main/java/org/trafodion/jdbc/t4/TrafT4ResultSet.java
@@ -1832,6 +1832,9 @@ public class TrafT4ResultSet extends TrafT4Handle implements java.sql.ResultSet
case Types.CHAR:
+ if (sqltype == InterfaceResultSet.SQLTYPECODE_BOOLEAN) {
+ return String.valueOf(getBoolean(columnIndex));
+ }
case Types.VARCHAR:
case Types.LONGVARCHAR:
case Types.BLOB: