@Override public Node visitShowTables(SqlBaseParser.ShowTablesContext context) { return new ShowTables( getLocation(context), Optional.ofNullable(context.qualifiedName()) .map(this::getQualifiedName), getTextIfPresent(context.pattern) .map(AstBuilder::unquote), getTextIfPresent(context.escape) .map(AstBuilder::unquote)); }
@Test public void testShowTables() { assertStatement("SHOW TABLES", new ShowTables(Optional.empty(), Optional.empty(), Optional.empty())); assertStatement("SHOW TABLES FROM a", new ShowTables(Optional.of(QualifiedName.of("a")), Optional.empty(), Optional.empty())); assertStatement("SHOW TABLES FROM \"awesome schema\"", new ShowTables(Optional.of(QualifiedName.of("awesome schema")), Optional.empty(), Optional.empty())); assertStatement("SHOW TABLES IN a LIKE '%$_%' ESCAPE '$'", new ShowTables(Optional.of(QualifiedName.of("a")), Optional.of("%$_%"), Optional.of("$"))); }
@Override public Node visitShowTables(SqlBaseParser.ShowTablesContext context) { return new ShowTables( getLocation(context), Optional.ofNullable(context.qualifiedName()) .map(this::getQualifiedName), getTextIfPresent(context.pattern) .map(AstBuilder::unquote)); }
@Override public Node visitShowTables(SqlBaseParser.ShowTablesContext context) { return new ShowTables( getLocation(context), Optional.ofNullable(context.qualifiedName()) .map(this::getQualifiedName), getTextIfPresent(context.pattern) .map(AstBuilder::unquote), getTextIfPresent(context.escape) .map(AstBuilder::unquote)); }
@Test public void testShowTables() { assertStatement("SHOW TABLES", new ShowTables(Optional.empty(), Optional.empty(), Optional.empty())); assertStatement("SHOW TABLES FROM a", new ShowTables(Optional.of(QualifiedName.of("a")), Optional.empty(), Optional.empty())); assertStatement("SHOW TABLES FROM \"awesome schema\"", new ShowTables(Optional.of(QualifiedName.of("awesome schema")), Optional.empty(), Optional.empty())); assertStatement("SHOW TABLES IN a LIKE '%$_%' ESCAPE '$'", new ShowTables(Optional.of(QualifiedName.of("a")), Optional.of("%$_%"), Optional.of("$"))); }
@Test public void testShowTables() throws Exception { assertStatement("SHOW TABLES", new ShowTables(Optional.empty(), Optional.empty())); assertStatement("SHOW TABLES FROM a", new ShowTables(Optional.of(QualifiedName.of("a")), Optional.empty())); assertStatement("SHOW TABLES IN a LIKE '%'", new ShowTables(Optional.of(QualifiedName.of("a")), Optional.of("%"))); }