Saya dapat menggandakan kesalahan dengan yang berikut:
declare @posting_date datetime
set @posting_date = '1/1/1753'
select DATEADD(day, -1 , DATEADD(mm, DATEDIFF(mm,0,@posting_date),0))
kesalahan setelah menjalankannya:
Pada dasarnya, posting_date dalam kasus di atas adalah nilai waktu tanggal minimum yang diizinkan oleh SQL server. Jika Anda kemudian mencoba mengurangi 1 hari darinya, maka itu memasuki kondisi overflow.
Dugaan saya adalah Anda memiliki titik data yang disetel ke Nilai tanggal minimum SQL Server .