Avatar billede pablo Nybegynder
17. maj 2001 - 14:05 Der er 12 kommentarer

Datoformat: 01-05-15 skal være 15-05-01

Jeg har en lille problem med visning af et datoformat. Datoen har jeg gemt i en alm. SQL Server database, og skriver den bare ud på skærmen. Dog har jeg sat Session.LCID = 1030.

Problemet er, at datoen skrives ud som: 01-05-15. Jeg vil gerne have skrevet den ud i rigtig rækkefølge: 15-05-01. Det hele fungerer 100% i Access, men efter konvertering til SQL Server, går det lidt galt her.

Jeg har søgt flere steder for at finde en løsning, men desværre uden held :(

Hvad gør jeg galt?




Avatar billede mwittrock Nybegynder
17. maj 2001 - 14:26 #1
Prøv den her:

Dim dtmNow
dtmNow = Now
Response.Write(Day(dtmNow) & \"-\" & Month(dtmNow) & \"-\" & Year(dtmNow))
Avatar billede pablo Nybegynder
17. maj 2001 - 14:43 #2
Det går helt galt. Så skriver den: 1-5-2015

Avatar billede mwittrock Nybegynder
17. maj 2001 - 14:50 #3
Prøv at fjerne dit LCID evt. Ellers kan du evt. foretage selve formateringen direkte i SQL Server.
Avatar billede pablo Nybegynder
17. maj 2001 - 14:58 #4
Jeg har allerede fjernet LCID. Det gør ingen forskel.

Jeg har ikke adgang til SQL serveren, da den står hos en udbyder. Derfor bliver jeg nødt til at foretage formatteringen i koden.


Avatar billede mwittrock Nybegynder
17. maj 2001 - 14:59 #5
Men du sender en forespørgsel til SQL Serveren, og den skal du foretage formateringen i.
Avatar billede pablo Nybegynder
17. maj 2001 - 15:02 #6
SQL-strengen ser således ud:

SQLstr =\"SELECT * FROM press ORDER BY colDate DESC;\"

Ved du hvordan det skal formatteres i SQL sætningen?

Avatar billede mwittrock Nybegynder
17. maj 2001 - 15:05 #7
Er det colDate der skal formateres? Prøv

SELECT *, CONVERT(VARCHAR(10), colDate, 5) AS colDateFormateret FROM press ORDER BY colDate DESC;
Avatar billede pablo Nybegynder
17. maj 2001 - 15:12 #8
Hehe... Det er ikke sådan lige til. Nu skriver den: 5-1-2015


Avatar billede mwittrock Nybegynder
17. maj 2001 - 15:19 #9
Det er tydeligvis noget rod med dato-indstillingerne mellem webserveren og databasen. Så skal datoen formateres manuelt. Sæt det her ind i stedet for CONVERT() i den ovenstående:

CAST(DATEPART(dd, GETDATE()) AS VARCHAR(2)) + \'-\' + CAST(DATEPART(mm, GETDATE()) AS VARCHAR(2)) + \'-\' + RIGHT(CAST(DATEPART(yyyy, GETDATE()) AS VARCHAR(4)), 2)

Og det var så mit sidste bud, ellers må du hit the books :)

Avatar billede pablo Nybegynder
17. maj 2001 - 15:24 #10
Nu returnerer den: 1-5-2017. Hmm...  Jeg bliver vist nødt til at hitte the books..  Ellers mange tak for dit forsøg :-)
Avatar billede mwittrock Nybegynder
17. maj 2001 - 15:32 #11
Og du er sikker på, at colDate er en DATETIME kolonne? Det er helt sort det du beskriver der...
Avatar billede pablo Nybegynder
17. maj 2001 - 15:45 #12
Ja, jeg er helt sikker på, at det er en DATETIME kolonne. Nu har jeg fået det tilrettet manuelt, og nu ser det rigtigt ud.

Så kommer problemerne jo desværre bare igen næste gang der skal tilføjes en record.

Jeg kan godt have en anelse om, at problemet ligger i det script, som opretter nye records. SQL-strengen i denne ser således ud:

    strSQL = \"INSERT INTO press (colDate, colDesc, colContent, colRead, colShown) VALUES ( \" & \" \'\" & Cdate(strDate) & \"\', \" & \" \'\" & strDesc & \"\', \" & \" \'\" & strContent & \"\', 0, \'\" & strShown & \"\');\"

Det er også helt sort for mig. Jeg har efterhånden arbejdet et godt stykke tid med ASP og SQL Server, men dette problem har jeg aldrig haft før.


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
Kurser inden for grundlæggende programmering

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