> When adding a new field in the existing table, i
> want to add the filed in a particular position.
I'm afraid the only way would be re-writing the whole table (pseudo sql):
BEGIN;
create table newtable as select field1, 'newfield default value', field2 from old_table;
create_all_indexes on newtable;
drop old_table;
commit;
things get complicated if you have foreign keys pointing to old_table...