Skip to main content

build_delete_column

Function build_delete_column 

Source
pub fn build_delete_column(
    backend: &DatabaseBackend,
    table: &str,
    column: &str,
    column_type: Option<&ColumnType>,
    current_schema: &[TableDef],
) -> Vec<BuiltQuery>
Expand description

Build SQL to delete a column, optionally with DROP TYPE for enum columns (PostgreSQL)

For SQLite: Handles constraint removal before dropping the column:

  • Unique/Index constraints: Dropped via DROP INDEX
  • ForeignKey/PrimaryKey constraints: Uses temp table approach (recreate table without column)

SQLite doesn’t cascade constraint drops when a column is dropped.