Vincent's quite right. As an addendum though, the drop, change & re-create is fine providing:
- You can store the datafile local to the database machine.
- The table is of a relatively small size and not heavily indexed. (Less than 50 - 100Meg in size)
These basically allow for size of data transfer across any WAN style connection and the time required to recreate all the necessary indicies.
If however you are working over a WAN / you have a heavily indexed table, the alter table command to either directly change the column, or to add a dummy column, populate, drop original and rename is also a relatively effective technique.
In all cases though, as the man says, do a full backup before making any changes of this nature.