if (node.isNotExists()) { builder.append("IF NOT EXISTS ");
Optional<TableHandle> tableHandle = metadata.getTableHandle(session, tableName); if (tableHandle.isPresent()) { if (!statement.isNotExists()) { throw new SemanticException(TABLE_ALREADY_EXISTS, statement, "Table '%s' already exists", tableName); metadata.createTable(session, tableName.getCatalogName(), tableMetadata, statement.isNotExists()); if (!e.getErrorCode().equals(ALREADY_EXISTS.toErrorCode()) || !statement.isNotExists()) { throw e;
@Override protected Void visitCreateTable(CreateTable node, Integer indent) { builder.append("CREATE TABLE "); if (node.isNotExists()) { builder.append("IF NOT EXISTS ");
@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; }
if (node.isNotExists()) { builder.append("IF NOT EXISTS ");
Optional<TableHandle> tableHandle = metadata.getTableHandle(session, tableName); if (tableHandle.isPresent()) { if (!statement.isNotExists()) { throw new SemanticException(TABLE_ALREADY_EXISTS, statement, "Table '%s' already exists", tableName);