Conversion du format de date SQL Server : DATETIME en JJ-MM-AAAA
Dans SQL Server, lors de la récupération des valeurs de date dans le JJ-MM -format AAAA, les utilisateurs rencontrent souvent le besoin de stocker ces valeurs dans un type de données DATETIME tout en préservant le même format. Cette question explore une solution à cette exigence.
La requête fournie, SELECT CONVERT(VARCHAR(10), GETDATE(), 105), convertit avec succès la date actuelle au format JJ-MM-AAAA souhaité dans un Type de données VARCHAR. Cependant, stocker cette valeur dans un type de données DATETIME nécessite une approche différente.
Dans SQL Server, les valeurs DATETIME sont stockées sous forme de 2 entiers de 4 octets, ce qui les rend intrinsèquement non formatées. Pour afficher ou récupérer des dates dans des formats spécifiques, il faut les convertir en un type de données VARCHAR à l'aide de l'identifiant de format approprié.
Pour obtenir le format souhaité dans un type de données DATETIME, considérez ce qui suit :
Par exemple, pour insérer une date au format jj/MM/aaaa en toute sécurité :
INSERT MyTable (DateField) VALUES ('01/10/2010') -- dd/MM/yyyy not safe
Utilisez plutôt un format sécurisé :
INSERT MyTable (DateField) VALUES ('20101001') -- yyyyMMdd safe
Veuillez noter que lors de la sélection des champs DATETIME, SSMS affiche les valeurs formatées pour plus de commodité. La représentation interne réelle est un entier de 8 octets.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!