Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Impossibile assegnare un valore predefinito a una variabile locale in SQL

Prima di SQL Server 2008, non era consentito assegnare un valore predefinito (o un valore iniziale) a una variabile locale; in caso contrario verrà visualizzato questo messaggio di errore.

Soluzione 1: (Usa SET )

DECLARE @thresholdDate DATETIME 
set @thresholdDate = '2014-11-30'

Per maggiori dettagli sull'errore:http://www. sql-server-helper.com/error-messages/msg-139.aspx

Soluzione 2: (Aggiorna )

Un altro modo per evitare questo errore, che è una soluzione un po' inverosimile, consiste nell'aggiornamento a SQL Server 2008. SQL Server 2008 ora consente l'assegnazione di un valore a una variabile nell'istruzione DECLARE.