SQL Server & Cambiare le impostazioni relative alla lingua

A volte capita!

Cambia il server dove è installato il nostro applicativo.
Era presente una versione di SQL Server in italiano (d’altronde siamo in Italia) e ce ne troviamo una in inglese. OMG!

Tutto bene? Non proprio!


La prima cosa che succede è che le nostre procedure che hanno a che fare con le date non funzionano più.

Già, se ci pensate bene in Italia abbiamo il formato gg/mm/aaaa
In lingua inglese invece la data segue con questo formato mm/aa/aaa

In pratica se cerchiamo di convertire la data sotto dopo il cambio server il cast restituisce errore:

       
SELECT CAST('22/10/2019' AS DATETIME)
 
Andrebbe infatti bene se avessimo scritto:

SELECT CAST('10/22/2019' AS DATETIME)


Occorre cambiare le impostazioni relative alla lingua.

Semplice! Ecco come!

Fate tasto destro sulle proprietà del server.
Scegliete la pagina advanced.
Cambiate infine le impostazioni del Default Language da English a italiano


sql server properties

Adesso l'ultimo passo consiste nel cambiare lingua anche sugli utenti di SQL Server.

sql server properties


Per ogni utente (qui sopra l'utente SA) impostare la lingua italiano.
Ecco fatto e senza nessuna necessità di riavviare l'istanza.

Alla prossima!

Luca Biondi @ SQLServerPerformance blog!







 

 

Next post:  SQL Server Ottimizzazioni: non omettere il nome dello schema! (schema name resolution)

Previous post: SQL Server, il database recovery e le fasi di Analysis, Redo e Undo



Comments

I Post più popolari

SQL Server, execution plan and the lazy spool (clearly explained)

SQL Server, datetime vs. datetime2

La clausola NOLOCK. Approfondiamo e facciamo chiarezza!