public static Number getExactlyNumber(final String value, final int radix) {
        try {
            return getBigInteger(value, radix);
        } catch (final NumberFormatException ex) {
            return new BigDecimal(value);
        }
    }
@Test
    void assertGetExactlyNumberForLong() {
        assertThat(SQLUtils.getExactlyNumber("100000000000", 10), is(100000000000L));
        assertThat(SQLUtils.getExactlyNumber("100000000000", 16), is(17592186044416L));
        assertThat(SQLUtils.getExactlyNumber(String.valueOf(Long.MIN_VALUE), 10), is(Long.MIN_VALUE));
        assertThat(SQLUtils.getExactlyNumber(String.valueOf(Long.MAX_VALUE), 10), is(Long.MAX_VALUE));
    }