diff --git a/src/main/java/com/alibaba/druid/hbase/exec/InsertExecutePlan.java b/src/main/java/com/alibaba/druid/hbase/exec/InsertExecutePlan.java index a6e2f35996..7fc583b5c9 100644 --- a/src/main/java/com/alibaba/druid/hbase/exec/InsertExecutePlan.java +++ b/src/main/java/com/alibaba/druid/hbase/exec/InsertExecutePlan.java @@ -44,6 +44,12 @@ public class InsertExecutePlan extends SingleTableExecutePlan { } else if (value instanceof Integer) { int intValue = ((Integer) value).intValue(); bytes = Bytes.toBytes(intValue); + } else if (value instanceof Long) { + long longValue = ((Long) value).longValue(); + bytes = Bytes.toBytes(longValue); + } else if (value instanceof Boolean) { + boolean booleanValue = ((Boolean) value).booleanValue(); + bytes = Bytes.toBytes(booleanValue); } else { throw new SQLException("TODO"); // TODO } diff --git a/src/test/java/com/alibaba/druid/hbase/HBaseDriverInsertTest.java b/src/test/java/com/alibaba/druid/hbase/HBaseDriverInsertTest.java index aa87c073ed..35f83086dc 100644 --- a/src/test/java/com/alibaba/druid/hbase/HBaseDriverInsertTest.java +++ b/src/test/java/com/alibaba/druid/hbase/HBaseDriverInsertTest.java @@ -12,9 +12,11 @@ public class HBaseDriverInsertTest extends TestCase { HBaseDriver driver = new HBaseDriver(); Connection conn = driver.connect("jdbc:druid-hbase:10.20.153.63", new Properties()); - PreparedStatement stmt = conn.prepareStatement("INSERT INTO test_user (id, name) VALUES (?, ?)"); + PreparedStatement stmt = conn.prepareStatement("INSERT INTO test_user (id, name, gender) VALUES (?, ?, ?)"); stmt.setInt(1, 33); stmt.setString(2, "ljw"); + stmt.setString(3, "M"); + stmt.execute();