Microsoft SQL Server only does millisecond accuracy (precision of 3) on datetime columns, so anything sub-millisecond tends to generate an error such as 22008 [Microsoft][ODBC SQL Server Driver]Datetime field overflow. As the fraction part of a timestamp can range from 0 to 999,999,999 you need to specify the fraction in thousands of second.
If you are using column-wise bound parameters to insert a timestamp into a datetime field, make sure the ColumnSize is set to 23.