Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 22861|Atsakyti: 0

[Šaltinis] SqlDateTime perpilda. Turi būti nuo 1753-01-01 nuo 12:00:00 iki 9999-12-31

[Kopijuoti nuorodą]
Paskelbta 2016-06-29 12:08:36 | | | |
SqlDateTime perpilda. Turi būti nuo 1753-01-01 12:00:00 iki 9999-12-31 11


Įterpiant duomenis su NHibernate orm sistema, buvo pranešta apie aukščiau pateiktą klaidą:

SqlDateTime perpilda / SqlDateTime perpilda
[Santrauka: Klaida - SqlDateTime perpildymas. Turi būti tarp 1/1/1753 12:00:00 AM ir 12/31/9999 11:59:59 PM SqlDateTime perpildymas. Turi būti tarp 1/1/1753 12:00:00 AM Karas 12/31/9999 11:59:59 PM Priežastis Taikant C# įterpti arba atnaujinti duomenų bazę, datetime word]

Klaida – SqlDateTime perpilda. Turi būti nuo 1753-01-01 12:00:00 iki 9999-12-31 23:59:59
SqlDateTime perpilda. Turi būti nuo 1753-01-01 12:00:00 iki 9999-12-31 23:59:59

Priežastis

Naudojant C# įterpti arba atnaujinti duomenų bazę, pagal numatytuosius nustatymus lauko datetime reikšmė yra nulinė. Įterpimas C# 0001-01-01 sukelia SQL serverio datetime tipo perpildą.

DateTime tipo diapazonas C#

DateTime.MinValue = 1/1/0001 12:00:00 AM DateTime.MaxValue = 23:59:59.9999999, 9999 m. gruodžio 31 d., lygiai viena 100 nanosekundžių varnelė iki 10000 m. sausio 1 d. 00:00:00
Datos ir laiko tipo diapazonas SQL serveryje

nuo 1753-01-01 12:00:00 iki 9999-12-31 23:59:59


Perskaičiusi šį straipsnį tikriausiai kažką suprantu, turėtų būti tuščia savybė, NHibernate automatiškai nustato numatytąją reikšmę, manau, kad ji turėtų būti tokia????


Tada, priskyrę UpdateTime atributą, kuris iš pradžių nebuvo priskirtas,nustatė, kad klaidos nebuvo, tada įterpė duomenų lentelę,

Tačiau mano laukas gali būti tuščias, ką turėčiau daryti???

Raskite ypatybę UpdateTime klasėje DateTime ir nustatykite ją kaip DateTime?  Tai yra, leiskite tuštumui. (Susietame xml yra geriausias, taip pat nustatytas į not-null="false", kaip nurodyta toliau:)



Galiausiai, sėkmės, padarykite duomenų bazės ekrano kopiją!






Ankstesnis:Nepavyko sukompiliuoti susiejimo dokumento: xxx.hbm.xml
Kitą:Flush supratimas apie ISession NHibernate
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com