@Override public String explain(CreateTable statement, List<Expression> parameters) { return "CREATE TABLE " + statement.getName(); }
builder.append("IF NOT EXISTS "); String tableName = formatName(node.getName()); builder.append(tableName).append(" (\n");
assertEquals(createTable.getName().getParts().size(), 3); assertEquals(createTable.getName().getPrefix().get(), QualifiedName.of("other_catalog", "other_schema")); assertTrue(createTable.getName().getSuffix().startsWith("tmp_")); assertFalse(createTable.getName().getSuffix().contains("test_insert_table")); assertEquals(insert.getTarget(), createTable.getName()); assertEquals(insert.getColumns(), Optional.of(ImmutableList.of(identifier("b"), identifier("a"), identifier("c")))); Table table = new Table(createTable.getName()); SingleColumn columnA = new SingleColumn(new FunctionCall(QualifiedName.of("checksum"), ImmutableList.of(new Identifier("A")))); SingleColumn columnB = new SingleColumn(new FunctionCall(QualifiedName.of("checksum"), ImmutableList.of(new FunctionCall(QualifiedName.of("round"), ImmutableList.of(new Identifier("B"), new LongLiteral("1")))))); assertEquals(parser.createStatement(rewrittenQuery.getPostQueries().get(0)), new DropTable(createTable.getName(), true));
QualifiedObjectName tableName = createQualifiedObjectName(session, statement, statement.getName()); Optional<TableHandle> tableHandle = metadata.getTableHandle(session, tableName); if (tableHandle.isPresent()) {
builder.append("IF NOT EXISTS "); String tableName = formatName(node.getName()); builder.append(tableName).append(" (\n");
@Override public String explain(CreateTable statement) { return "CREATE TABLE " + statement.getName(); }
@Override protected Void visitCreateTable(CreateTable node, Integer indent) { builder.append("CREATE TABLE "); if (node.isNotExists()) { builder.append("IF NOT EXISTS "); } builder.append(node.getName()) .append(" ("); Joiner.on(", ").appendTo(builder, transform(node.getElements(), element -> element.getName() + " " + element.getType())); builder.append(")"); if (!node.getProperties().isEmpty()) { builder.append(" WITH ("); Joiner.on(", ").appendTo(builder, transform(node.getProperties().entrySet(), entry -> entry.getKey() + " = " + formatExpression(entry.getValue()))); builder.append(")"); } return null; }
@Override protected Void visitCreateTable(CreateTable node, Integer indent) { builder.append("CREATE TABLE "); if (node.isNotExists()) { builder.append("IF NOT EXISTS "); } builder.append(node.getName()) .append(" ("); Joiner.on(", ").appendTo(builder, transform(node.getElements(), element -> element.getName() + " " + element.getType())); builder.append(")"); if (!node.getProperties().isEmpty()) { builder.append(" WITH ("); Joiner.on(", ").appendTo(builder, transform(node.getProperties().entrySet(), entry -> entry.getKey() + " = " + formatExpression(entry.getValue()))); builder.append(")"); } return null; }
builder.append("IF NOT EXISTS "); String tableName = formatName(node.getName()); builder.append(tableName).append(" (\n");
String[] indexAndType = this.getIndexAndType(create.getName().toString(), sql, "table\\s+", "\\s+\\(", index); index = indexAndType[0]; String type = indexAndType[1];
QualifiedObjectName tableName = createQualifiedObjectName(session, statement, statement.getName()); Optional<TableHandle> tableHandle = metadata.getTableHandle(session, tableName); if (tableHandle.isPresent()) {