Lisez l'article que j'ai écrit à ce sujet : http://sqlpro.developpez.com/cours/sqlaz/erreurs/#L7
Si vous voulez convertir du DATETIME en littéral, utiliser CONVERT avec un paramètre.
Exemple : S
SELECT CONVERT(CHAR(20), CURRENT_TIMESTAMP, 121)
Si vous voulez convertir du littéral en DATETIME :
soit vous utilisez le format ISO court portable PARTOUT et dans tOUTE config : 'AAAAMMJJ HH:MM:SS.nnn'
Soit vous précisez l'ordre des parties de la date pour la session avec le flag DATE_FORMAT.
Exemple :
1 2 3 4 5 6 7 8 9 10
| SELECT CAST('20060923 11:22:33.444' AS DATETIME)
SET DATE_FORMAT ymd
SELECT CAST('2006-09-23 11:22:33.444' AS DATETIME)
SELECT CAST('2006/09/23 11:22:33.444' AS DATETIME)
SET DATE_FORMAT mdy
SELECT CAST('09-23-2006 11:22:33.444' AS DATETIME)
SELECT CAST('09/23/2006 11:22:33.444' AS DATETIME)
SET DATE_FORMAT dmy
SELECT CAST('23-09-2006 11:22:33.444' AS DATETIME)
SELECT CAST('23/09/2006 11:22:33.444' AS DATETIME) |
A +
Partager