@Override public void enterTableOptionCharset(MySqlParser.TableOptionCharsetContext ctx) { parser.runIfNotNull(() -> { String charsetName = parser.withoutQuotes(ctx.charsetName()); tableEditor.setDefaultCharsetName(charsetName); }, tableEditor); super.enterTableOptionCharset(ctx); } }
@Override public TableEditor edit() { return new TableEditorImpl().tableId(id) .setColumns(columnDefs) .setPrimaryKeyNames(pkColumnNames) .setDefaultCharsetName(defaultCharsetName); } }
@Override public void exitColumnCreateTable(MySqlParser.ColumnCreateTableContext ctx) { parser.runIfNotNull(() -> { // Make sure that the table's character set has been set ... if (!tableEditor.hasDefaultCharsetName()) { tableEditor.setDefaultCharsetName(parser.currentDatabaseCharset()); } listeners.remove(columnDefinitionListener); columnDefinitionListener = null; // remove column definition parser listener parser.databaseTables().overwriteTable(tableEditor.create()); parser.signalCreateTable(tableEditor.tableId(), ctx); }, tableEditor); super.exitColumnCreateTable(ctx); }
@Override public void exitAlterView(MySqlParser.AlterViewContext ctx) { parser.runIfNotNull(() -> { tableEditor.addColumns(selectColumnsListener.getSelectedColumns()); // Make sure that the table's character set has been set ... if (!tableEditor.hasDefaultCharsetName()) { tableEditor.setDefaultCharsetName(parser.currentDatabaseCharset()); } parser.databaseTables().overwriteTable(tableEditor.create()); listeners.remove(selectColumnsListener); }, tableEditor); // signal view even if it was skipped parser.signalAlterView(parser.parseQualifiedTableId(ctx.fullId()), null, ctx); super.exitAlterView(ctx); } }
@Override public void exitCreateView(MySqlParser.CreateViewContext ctx) { parser.runIfNotNull(() -> { tableEditor.addColumns(selectColumnsListener.getSelectedColumns()); // Make sure that the table's character set has been set ... if (!tableEditor.hasDefaultCharsetName()) { tableEditor.setDefaultCharsetName(parser.currentDatabaseCharset()); } parser.databaseTables().overwriteTable(tableEditor.create()); listeners.remove(selectColumnsListener); }, tableEditor); // signal view even if it was skipped parser.signalCreateView(parser.parseQualifiedTableId(ctx.fullId()), ctx); super.exitCreateView(ctx); } }
private static Table fromDocument(TableId id, Document document) { TableEditor editor = Table.editor() .tableId(id) .setDefaultCharsetName(document.getString("defaultCharsetName"));
table.setDefaultCharsetName(charsetName); return true; } else if (tokens.canConsume("DEFAULT", "COLLATE") || tokens.canConsume("COLLATE")) {
table.setDefaultCharsetName(currentDatabaseCharset());
tokens.canConsume('='); table.setDefaultCharsetName(charsetName); if (tokens.canConsume("COLLATE")) { tokens.canConsume('=');
@Override public TableEditor edit() { return new TableEditorImpl().tableId(id) .setColumns(columnDefs) .setPrimaryKeyNames(pkColumnNames) .setDefaultCharsetName(defaultCharsetName); } }
private static Table fromDocument(TableId id, Document document) { TableEditor editor = Table.editor() .tableId(id) .setDefaultCharsetName(document.getString("defaultCharsetName"));