Qu'est-ce que datetime2?

.net c#-3.0 entity-framework sql sql-server-2008

Question

J'ai ceci dans une déclaration INSERT à MSSQL 2008

System.Data.SqlClient.SqlException: la conversion d'un type de données datetime2 en un type de données datetime a entraîné une valeur hors limites.

Réponse acceptée

Définit une date associée à une heure du jour basée sur une horloge de 24 heures. datetime2 peut être considéré comme une extension du type datetime existant avec une plage de dates plus grande, une précision fractionnelle par défaut plus grande et une précision facultative spécifiée par l'utilisateur.

http://technet.microsoft.com/en-us/library/bb677335.aspx


Réponse populaire

Le type de données datetime de SQLServer est une plage beaucoup plus petite de valeurs autorisées que le type de données datetime .net. Le type datetime de SQLServer prend en charge le calendrier grégorien. La plus petite valeur possible est 1/1/1753. En 2008, SQLServer a ajouté un type de données datetime2 qui prend en charge la première année (il n'y avait aucune année 0). On dirait que vous essayez d'insérer une valeur datetime antérieure au 1/1/1753 dans une colonne SQLServer datetime (et non datetime2)



Related

Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow