Avatar billede kelo Nybegynder
20. juni 2003 - 10:57 Der er 1 løsning

Dato problemer

Hej Alle,

Jeg har et script der skal indsætte en dato i en tabel (smalldate). Når jeg bruger getdate(date()), så får jeg følgende dato streng '20-06-2003' I mit script for jeg da følgende fejl:

Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC SQL Server Driver][SQL Server]The conversion of char data type to smalldatetime data type resulted in an out-of-range smalldatetime value.

Indtil nu har jeg scriptet mig ud af det, hvis ikke denne dato format virker så sætter jeg en systemparametre, så systemet selv om formatere strengen. Men er det ikke muligt at gøre noget i sql-serveren?

Det sjove er selvfølgelig, at på driftserveren der kører skidtet bare uden at formaterer datostrengen.

Det er måske blevet lidt vrøvlet, men jeg gad godt vide om der nogle der har fundet en anden metode end at scripte sig ud af det.
Avatar billede bennytordrup Nybegynder
20. juni 2003 - 17:29 #1
Sørg for at caste/formattere datoen efter ISO-format (yyyymmdd)

I ren SQL gør du følgende:

cast(convert(nvarchar(10), getdate(), 112) as datetime)

I VB bruger du:

format(date(), "yyyymmdd")
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester