Maison > base de données > tutoriel mysql > Pourquoi SQL Server perd-il des millisecondes lors du stockage des valeurs DateHeure ?

Pourquoi SQL Server perd-il des millisecondes lors du stockage des valeurs DateHeure ?

Patricia Arquette
Libérer: 2025-01-13 11:07:44
original
180 Les gens l'ont consulté

Why Does SQL Server Lose Milliseconds When Storing Datetime Values?

Millisecondes manquantes dans SQL Server : comprendre la granularité du stockage du temps

Lorsque vous travaillez avec des données sensibles au temps dans SQL Server, il est important d'être conscient des limites de stockage et de traitement des millisecondes. Parmi les questions soulevées par les utilisateurs figurait un problème concernant les millisecondes manquantes lors de l'insertion de valeurs datetime dans un tableau.

Question :

L'utilisateur crée une table avec une colonne datetime et exécute une instruction d'insertion avec une valeur datetime contenant des millisecondes. Cependant, lors de la récupération de la valeur, la composante milliseconde semble disparaître.

Explication :

SQL Server lui-même stocke l'heure avec une granularité d'environ 1/300e de seconde, ce qui est cohérent avec des intervalles de 0, 3 et 7 millisecondes. Par exemple, l'incrément est :

  • 00:00:00.000
  • 00:00:00.003
  • 00:00:00.007
  • 00:00:00.010
  • 00:00:00.013

Dans le scénario donné, la valeur datetime contient un composant milliseconde avec une granularité que SQL Server ne prend pas en charge. Par conséquent, lorsque la valeur est stockée dans le tableau, elle est arrondie au 1/300ème de seconde le plus proche, ce qui entraîne une perte de précision en millisecondes.

Solution :

Pour obtenir une précision à la milliseconde dans SQL Server, une approche alternative est requise :

  • Stockage de champs numériques personnalisés : Convertissez une valeur datetime en champ numérique personnalisé et reconstruisez-la lors de la récupération.
  • String Storage : Stocke une valeur datetime sous forme de chaîne dans un format connu. Cela peut prendre en charge des millisecondes, mais introduit une complexité conceptuelle.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal