@Override
    public Optional<ExecuteResult> getSaneQueryResult(final SQLStatement sqlStatement, final SQLException ex) {
        if (ER_PARSE_ERROR == ex.getErrorCode()) {
            return Optional.empty();
        }
        if (sqlStatement instanceof SelectStatement) {
            return createQueryResult((SelectStatement) sqlStatement);
        }
        if (sqlStatement instanceof MySQLShowOtherStatement) {
            return Optional.of(createQueryResult());
        }
        if (sqlStatement instanceof MySQLSetStatement) {
            return Optional.of(new UpdateResult(0, 0L));
        }
        return Optional.empty();
    }
@Test
    void assertGetSaneQueryResultForSelectNoProjectionsStatementWithoutFrom() {
        MySQLSelectStatement selectStatement = new MySQLSelectStatement();
        selectStatement.setProjections(new ProjectionsSegment(0, 0));
        assertThat(new MySQLDialectSaneQueryResultEngine().getSaneQueryResult(selectStatement, new SQLException("")), is(Optional.empty()));
    }