Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Les millisecondes dans mon DateTime changent lorsqu'elles sont stockées dans SQL Server

Cela dépend vraiment de la version du serveur SQL que vous utilisez.

La résolution du champ date/heure est à 3 décimales :Par exemple :2011-06-06 23:59:59.997 et n'est précis qu'à 3,33 ms près.

Dans votre cas, 09:30:03.0196095 est arrondi à 09:30:03.020 sur le stockage.

Depuis SQL 2008, d'autres types de données ont été ajoutés pour fournir plus de détails, tels que datetime2 qui a jusqu'à 7 décimales et est précis à 100ns près.

Voir ce qui suit pour plus d'informations :

http://karaszi.com/the-ultimate-guide-to-the-datetime-datatypes

Je pense que votre meilleur pari est de fournir l'arrondi à la seconde AVANT de le stocker dans le serveur SQL si les millisecondes ne sont pas importantes.