sorry
my test
create table f1(a int, b int, c varchar, dropped_column numeric, d varchar);
create or replace function f1_trg()
returns trigger as $$
declare _f1_var f1;
begin raise notice 'run trigger';
_f1_var := new;
return _f1_var;
end;
$$ language plpgsql;
create trigger xx before insert on f1 for row execute procedure f1_trg();
insert into f1 values(1,1,'aaa',1.1,'aaa');
alter table f1 drop column dropped_column ;
insert into f1 values(1,1,'aaa','aaa');