Before dropping a column, a check should be made for objects that depend on the column.
CREATE TABLE T1 (A INT NOT NULL PRIMARY KEY, B INT);
CREATE VIEW V1 AS SELECT B FROM T1;
ALTER TABLE T1 DROP COLUMN B; – should fail
At a minimum RESTRICT behavior should be supported. Ideally, CASCADE would be supported as well.