nodeAlterTableDropColumn converts a tree.AlterTableDropColumn instance into an equivalent vitess.DDL instance.
(ctx *Context, node *tree.AlterTableDropColumn, tableName vitess.TableName, ifExists bool)
| 278 | |
| 279 | // nodeAlterTableDropColumn converts a tree.AlterTableDropColumn instance into an equivalent vitess.DDL instance. |
| 280 | func nodeAlterTableDropColumn(ctx *Context, node *tree.AlterTableDropColumn, tableName vitess.TableName, ifExists bool) (*vitess.DDL, error) { |
| 281 | if node.IfExists { |
| 282 | return nil, errors.Errorf("IF EXISTS on a column in a DROP COLUMN statement is not supported yet") |
| 283 | } |
| 284 | |
| 285 | switch node.DropBehavior { |
| 286 | case tree.DropDefault: |
| 287 | case tree.DropRestrict: |
| 288 | return nil, errors.Errorf("ALTER TABLE DROP COLUMN does not support RESTRICT option") |
| 289 | case tree.DropCascade: |
| 290 | logrus.Warnf("CASCADE option on DROP COLUMN is not yet supported, ignoring") |
| 291 | default: |
| 292 | return nil, errors.Errorf("ALTER TABLE with unsupported drop behavior %v", node.DropBehavior) |
| 293 | } |
| 294 | |
| 295 | return &vitess.DDL{ |
| 296 | Action: "alter", |
| 297 | ColumnAction: "drop", |
| 298 | Table: tableName, |
| 299 | IfExists: ifExists, |
| 300 | Column: vitess.NewColIdent(node.Column.String()), |
| 301 | }, nil |
| 302 | } |
| 303 | |
| 304 | // nodeAlterTableRenameColumn converts a tree.AlterTableRenameColumn instance into an equivalent vitess.DDL instance. |
| 305 | func nodeAlterTableRenameColumn(ctx *Context, node *tree.AlterTableRenameColumn, tableName vitess.TableName, ifExists bool) (*vitess.DDL, error) { |
no test coverage detected