Search in sources :

Example 1 with SQLAlterTableRenameColumn

use of com.alibaba.druid.sql.ast.statement.SQLAlterTableRenameColumn in project druid by alibaba.

the class MySqlAlterTableTest_40_change method isRenameColumn.

public boolean isRenameColumn(SQLAlterTableStatement stmt) {
    for (SQLAlterTableItem item : stmt.getItems()) {
        if (item instanceof MySqlAlterTableChangeColumn) {
            MySqlAlterTableChangeColumn changeColumn = (MySqlAlterTableChangeColumn) item;
            SQLIdentifierExpr columnName = (SQLIdentifierExpr) changeColumn.getColumnName();
            String newColumnName = changeColumn.getNewColumnDefinition().getColumnName();
            if (!columnName.nameEquals(newColumnName)) {
                return true;
            }
        }
        if (item instanceof SQLAlterTableRenameColumn) {
            return true;
        }
    }
    return false;
}
Also used : SQLAlterTableItem(com.alibaba.druid.sql.ast.statement.SQLAlterTableItem) SQLAlterTableRenameColumn(com.alibaba.druid.sql.ast.statement.SQLAlterTableRenameColumn) MySqlAlterTableChangeColumn(com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlAlterTableChangeColumn) SQLIdentifierExpr(com.alibaba.druid.sql.ast.expr.SQLIdentifierExpr)

Aggregations

SQLIdentifierExpr (com.alibaba.druid.sql.ast.expr.SQLIdentifierExpr)1 SQLAlterTableItem (com.alibaba.druid.sql.ast.statement.SQLAlterTableItem)1 SQLAlterTableRenameColumn (com.alibaba.druid.sql.ast.statement.SQLAlterTableRenameColumn)1 MySqlAlterTableChangeColumn (com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlAlterTableChangeColumn)1