utilizzare sempre con istruzioni come ;WITH
allora non riceverai mai questo errore. Il comando WITH richiedeva un ;
tra esso e qualsiasi comando precedente, utilizzando sempre ;WITH
non dovrai mai ricordarti di farlo.
vedere WITH common_table_expression (Transact-SQL), dalla sezione Linee guida per la creazione e l'utilizzo di espressioni di tabelle comuni:
Quando un CTE viene utilizzato in un'istruzione che fa parte di un batch, l'istruzione prima deve essere seguita da un punto e virgola.