Jag håller på med att skicka in uppgifter från gamla access-databaser till MsSQL-databas. Allt går fint tills jag får ett fel med datetime vid ett visst värde. Hej! Det förklarar saken. Tjaaa du..out-of-range datetime value: 1568-03-30
Liknande poster läggs över utan problem till datetime-fältet men just denna: '1568-03-30' som läggs in med '15680330', liksom alla de andra t.ex. '20050630' funkar inte. Får följande meddelande:
The conversion of a cgar data type to a datetime data type resultet in an out-of-range datetime value. Vad beror detta på? Fanns inte 30:e mars år 1568 (haha), kan man inte lägga in så gamla datum eller vad tusan står på? Någon som vet?
Mvh
/Jakob
spara = "'" & Replace(RS("sortdatum"), "-", "") & "'"
sql = "INSERT INTO mappar sortdatum values (" & spara & ")"Sv: out-of-range datetime value: 1568-03-30
Ett utdrag ur BOL:
<b>Values for datetime earlier than January 1, 1753, are not permitted.</b>
Har du datatypen DATETIME i MSSQL Server är du "rökt".
Byt till Varchar.
//HåkanSv:out-of-range datetime value: 1568-03-30
Om mina medlemmarär så dumma och anger så gamla datum så får jag helt enkelt göra ifall year(datum) < 1753 och sätta året i datumet till 1753 istället. byter inte ut datumfältet
tack för hjälpen!
(btw. hur kommer det sig att man lägger in en sådan spärr? borde inte det innebära stora svårigheter för sidor som sorterar väldigt antika saker efter datum?)Sv: out-of-range datetime value: 1568-03-30
Dom har valt att se framåt inte bakåt. ;-)
DATETIME sträcker sig framåt till 31 december 9999.
DATETIME lagras i två st. 4 bytes integer.
Dom räcker väl inte längre bakåt i tiden, när dom ska nå så långt fram i tiden.
Om du ändå ska kolla året, kan du väl kontrollera mot lite mer modern tid, 1900 talet t.ex.
//Håkan