SUMMARY
The Microsoft Developer Network (MSDN) documentation for the ODBC C data type,
TIMESTAMP_STRUCT, states that the value of the fraction field can range from 0 to 999,999,999 to signify the number of billionths of a seconds or nanoseconds. However, if the fraction field is set to a value that represents a sub-millisecond and is then used to insert a date/time value into the
datetime field of a SQL Server table, the insert fails with the following ODBC error message:
22008 [Microsoft][ODBC SQL Server Driver]Datetime field overflow
The error message indicates that an overflow condition of the SQL Server
datetime data type occurred. This behavior is expected because the current accuracy of the
datetime data type in SQL Server is millisecond (one three-hundredth second to be precise).