A. Under SQL 7.0 all the above are easily done with standard ANSI "ALTER TABLE" ddl commands. Or they can be done via the gui or supplied stored-procedures.

With SQL 6.5 and below it is only possible to ADD a nullable column - or an IDENTITY column which seems to work even if it's not NULLable. For *any* other change a new table must be created, the data copied across, and the tables renamed around.

Certain 3rd party tools provide a gui interface to do this, that makes it look transparent, however they are really doing all the work described above, so if you make the change to a large table it will take a long time to do the work.

Examples of tools are :-

Microsoft's Visual Database Tools (part of Visual Interdev Enterprise Edition) 
SQL Programmer from www.sfi-software.com
XCase - www.xcase.com 
Desktop DBA - www.platinum.com
Speed Ferret

Note that there have been reports of Microsoft VDT losing data if you amend columns on a table and SQL does not have enough free-space to complete the task.