• I think the difference is really simple.

    ALTER TABLE: you can specify whether you are adding a column or changing a column. If adding one, it adds it to the end of the table, if changing a column it finds the column and changes it.

    ALTER PROCEDURE: if you are just changing part of a procedure, how do you tell it where the change goes?

    CREATE PROCEDURE myproc

    AS

    SELECT lname, fname, mi

    FROM mytable

    WHERE lname = 'smith'

    GO

    now I want to change the order of that select and get the first name, mi, and last name. How do I tell SQL Server to change JUST the select line? The code isn't written with line numbers, so I can't say something like ALTER PROCEDURE ALTER LINE 1 SELECT fname, mi, lname.

    Since I can't tell SQL Server the specific part I need to change, I have to resubmit the entire thing.

    -SQLBill