alter table mudando para numeric(18,4) não resolve não? se fizer pelo ib$expert, ele renomeia o campo atual, cria novamente o campo como numeric, copia os dados e deleta o campo renomeado... desse modo e precisão é normalizada... :3