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 :
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 :
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!