Ponieważ jeden z nich to polecenie transakcji sql (try catch), a drugi to instrukcja DDL.
Prawdopodobnie lepiej byłoby sprawdzić, czy kolumna istnieje przed wykonaniem instrukcji alter.
Aby to zrobić z MSSQL, zobacz Jak sprawdzić, czy kolumna istnieje w tabeli SQL Server?
Specjalnie dla Twojej sprawy,
IF COL_LENGTH('nyork', 'Qtr') IS NULL
BEGIN
alter table nyork
add [Qtr] varchar(20)
END