Para ser independente das configurações de idioma e localidade, você deve usar a ISO 8601
YYYYMMDD
format - isso funcionará em qualquer sistema SQL Server com qualquer idioma e configuração regional em vigor:SELECT
CAST(
CAST(year AS VARCHAR(4)) +
RIGHT('0' + CAST(month AS VARCHAR(2)), 2) +
RIGHT('0' + CAST(day AS VARCHAR(2)), 2)
AS DATETIME)