SqlDateTime overflow. Mora biti med 1.1.1753 ob 00:00:00 in 31.12.9999 ob 11.
Pri vstavljanju podatkov v okviru NHibernate orm je bila prijavljena zgornja napaka:
SqlDateTime overflow / SqlDateTime overflow [Povzetek: Napaka - SqlDateTime overflow. Mora biti med 1.1.1753 ob 00:00:00 in 31.12.9999 ob 23:59:59 SqlDateTime overflow. Mora biti med 1.1.1753 in 00:00:00 Vojna 31.12.9999 23:59:59 Razlog Pri uporabi C# vstavi ali posodobi bazo podatkov, datum in čas besede]
Napaka - SqlDateTime overflow. Mora biti med 1.1.1753 ob 00:00:00 in 31.12.9999 ob 23:59:59 SqlDateTime overflow. Mora biti med 1.1.1753 ob 00:00:00 in 31.12.9999 ob 23:59:59
Vzrok
Pri uporabi C# vstavljanja ali posodobitve baze podatkov je vrednost polja datetime privzeto ničelna. Vstavljanje C# 0001-01-01 povzroči presežek tipa datuma SQL Server.
Razpon tipov DateTime v C#
DateTime.MinValue = 1/1/0001 00:00 AM DateTime.MaxValue = 23:59:59.99999999, 31. december 9999, natanko en 100-nanosekundni tik pred 00:00:00, 1. januar 10000 Razpon tipov datuma v Sql Serverju
med 1. 1. 1753 ob 00:00 in 31. 12. 9999 ob 23:59
Po branju tega članka verjetno nekaj razumem, morala bi obstajati lastnost, ki je prazna, NHibernate samodejno nastavi privzeto vrednost, mislim, da bi moralo biti tako????
Nato, po dodelitvi atributa UpdateTime, ki prvotno ni bil dodeljen,ugotovili, da ni bilo napake, in nato vstavil podatkovno tabelo,
Vendar pa je moje področje lahko prazno, kaj naj naredim???
Poiščite lastnost UpdateTime pod razredom DateTime in jo nastavite na DateTime? To pomeni, da dovolimo praznino. (V preslikani xml je najboljši, prav tako nastavljen na not-null="false", kot sledi:)
Nazadnje, uspeh, naredite posnetek zaslona baze podatkov!
|