@Override public byte[] toBytes(Object object) { byte[] b = new byte[Bytes.SIZEOF_LONG]; toBytes(object, b, 0); return b; }
@Test public void shouldPass() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); String testTable = generateUniqueName(); String ddl = "CREATE TABLE " + testTable + " ( some_column BINARY(12) NOT NULL CONSTRAINT PK PRIMARY KEY (some_column))"; conn.createStatement().execute(ddl); PreparedStatement ps = conn.prepareStatement( "UPSERT INTO " + testTable + " (some_column) VALUES (?)"); byte[] kk = Bytes.add(PUnsignedLong.INSTANCE.toBytes(2232594215l), PInteger.INSTANCE.toBytes(-8)); ps.setBytes(1, kk); ps.execute(); conn.commit(); ResultSet rs = conn.createStatement().executeQuery("SELECT * FROM " + testTable + " WHERE some_column = DECODE('000000008512af277ffffff8', 'hex')"); assertTrue(rs.next()); }
@Test public void upperCaseHexEncoding() throws Exception { Connection conn = DriverManager.getConnection(getUrl()); String testTable = generateUniqueName(); String ddl = "CREATE TABLE " + testTable + " ( some_column BINARY(12) NOT NULL CONSTRAINT PK PRIMARY KEY (some_column))"; conn.createStatement().execute(ddl); PreparedStatement ps = conn.prepareStatement( "UPSERT INTO " + testTable + " (some_column) VALUES (?)"); byte[] kk = Bytes.add(PUnsignedLong.INSTANCE.toBytes(2232594215l), PInteger.INSTANCE.toBytes(-8)); ps.setBytes(1, kk); ps.execute(); conn.commit(); ResultSet rs = conn.createStatement().executeQuery("SELECT * FROM " + testTable + " WHERE some_column = DECODE('000000008512af277ffffff8', 'HEX')"); assertTrue(rs.next()); }
@Override public byte[] toBytes(Object object) { byte[] b = new byte[Bytes.SIZEOF_LONG]; toBytes(object, b, 0); return b; }
@Override public byte[] toBytes(Object object) { byte[] b = new byte[Bytes.SIZEOF_LONG]; toBytes(object, b, 0); return b; }
false, PNameFactory.newName("9223372036854775806"), PUnsignedLong.INSTANCE.toBytes(PUnsignedLong.INSTANCE.toObject("9223372036854775806")) });