• I have used alter table / alter column many times and not thought about it. When I was consulting as a DBA for a state child services agency using DB2 on mainframe, I learned a valuable lesson why you have to think carefully about this when working large data sets.

    Extending a column in the middle of a database can force a reordering of all of the extents in the database. In this case, the data size involved would be on the order of hundreds of millions of rows and terabytes of data. (For the record, the DBA team told the developer who wanted to make this change so that he could store additional notes to go and figure out a better way to do it.)

    Adding an extra column at the end of the table, on the other hand, does not require any re-ordering of data. Many times, I think that individuals are taught the latter method without explaining why. If you're creating the table and fixing it right away, go for the alter. If you have 10M rows, you might think about it differently.