Domanda

Ho ottenuto questo in una statistica INSERT a MSSQL 2008

System.Data.SqlClient.SqlException: la conversione di un tipo di dati datetime2 in un tipo di dati datetime ha comportato un valore fuori intervallo.

Risposta accettata

Definisce una data combinata con un'ora del giorno basata sul formato di 24 ore. datetime2 può essere considerato come un'estensione del tipo datetime esistente con un intervallo di date più ampio, una precisione frazionaria predefinita più ampia e una precisione facoltativa specificata dall'utente.

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


Risposta popolare

Il datatype datetime di SQLServer è un intervallo molto più piccolo di valori consentiti rispetto al datatype .net datetime. Il tipo datetime di SQLServer supporta fondamentalmente il calendario gregoriano, quindi il valore più piccolo che puoi avere è 1/1/1753. Nel 2008 SQLServer ha aggiunto un datatype datetime2 che supporta l'anno 1 (non c'era nessun anno 0). Sembra che tu stia cercando di inserire un valore datetime precedente a 1/1/1753 in una colonna SQLServer datetime (non datetime2)



Related

Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché
Autorizzato sotto: CC-BY-SA with attribution
Non affiliato con Stack Overflow
È legale questo KB? Sì, impara il perché