/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Dato + tid problemer
Fra : René Poulsen


Dato : 30-05-04 13:20

Hejsa!

Jeg har et problem med at få indsat dato og tid i min MySQL
database.

Datoformatet er:
YYYY-MM-DD HH:MM:SS
f.eks.: 2004-05-30 14:16:43

I min sql sætning skriver jeg så:
"Insert Into tabel (Dato) values('" & Now("YYYY-MM-DD HH:MM:SS")
& "')"

Men det vil den ikke acceptere. Jeg får fejlmeddelelsen:
Microsoft VBScript runtime error '800a01c2'

Wrong number of arguments or invalid property assignment: 'Now'

/test2/nyt_indlaeg.asp, line 10


Linje 10 er linjen med min sql sætning, så det er ovenstående...

Hvad gør jeg galt?

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Jens Gyldenkærne Cla~ (30-05-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 30-05-04 21:04

René Poulsen skrev:

> Jeg har et problem med at få indsat dato og tid i min MySQL
> database.
>
> Datoformatet er:
> YYYY-MM-DD HH:MM:SS

Nej. Pas gevaldigt på med at konkludere noget om datoformatet i din
database ud fra præsentationen i en eller anden frontend til det.

Selv om datoer præsenteres i et fast format er det ikke
nødvendigvis sådan at indgående datoværdier fortolkes efter samme
format. Dog er det format du nævner ikke så tosset, fordi det ikke
så let kan mistolkes (yyyy-dd-mm er ikke et anvendt format, så
risikoen for at databasen bytter om på dd og mm er ikke til stede).

Helt generelt er det dog altid bedst at holde sig fra
tekstrepræsentationer af datoer. Når du som her blot skal indsætte
den aktuelle dato og tid, bør du benytte databasens funktion til
det. Mysql har lige som Access en funktion kaldet Now() - brug den,
så slipper du for at tænke på formater.

"Insert Into tabel (Dato) values( Now() )"

(bemærk placeringen af anførselstegn)


> I min sql sætning skriver jeg så:
> "Insert Into tabel (Dato) values('" & Now("YYYY-MM-DD HH:MM:SS")
> & "')"

Asp-funktionen now (som du benytter nu) kan ikke tage argumenter.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

René Poulsen (30-05-2004)
Kommentar
Fra : René Poulsen


Dato : 30-05-04 23:00

Jens GyldenkærneClausen wrote in
>
> Helt generelt er det dog altid bedst at holde sig fra
> tekstrepræsentationer af datoer. Når du som her blot skal indsætte
> den aktuelle dato og tid, bør du benytte databasens funktion til
> det. Mysql har lige som Access en funktion kaldet Now() - brug den,
> så slipper du for at tænke på formater.
>
> "Insert Into tabel (Dato) values( Now() )"
>
Jeg har prøvet med Now() og det ville heller ikke accepteres. Jeg har
dog fundet en anden udvej ved at bruge year(now), month(now) osv...
for så at sætte det hele sammen i en variabel (f.eks. dato) og så
skrive:
"Insert Into Tabel (Dato) values('" & dato & "')"

Mvh. René


--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jens Gyldenkærne Cla~ (31-05-2004)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 31-05-04 13:16

René Poulsen skrev:

> Jeg har prøvet med Now() og det ville heller ikke accepteres.

Hvilken fejl fik du?

Jeg kender ikke noget særligt til mysql, men så vidt jeg kunne se
af en manuallignende side skulle now-funktionen være understøttet.
Ellers er der funktioner som Curdate() o.l.

For resten - med mysql's rod i unix-verdenen er der en pæn
sandsynlighed for at funktionsnavne er versalfølsomme; altså at det
ikke er ligegyldigt om du skriver now(), Now() eller NOW(). Jeg
kender som nævnt ikke selv databaseprogrammet, men prøv evt at
kigge i manualen.

> Jeg har dog fundet en anden udvej ved at bruge year(now),
> month(now) osv... for så at sætte det hele sammen i en
> variabel (f.eks. dato) og så skrive:
> "Insert Into Tabel (Dato) values('" & dato & "')"

O.k. - lidt bøvlet, men det virker.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

René Poulsen (02-06-2004)
Kommentar
Fra : René Poulsen


Dato : 02-06-04 10:10

Jens GyldenkærneClausen wrote in
dk.edb.internet.webdesign.serverside.asp:
> René Poulsen skrev:
>
> > Jeg har prøvet med Now() og det ville heller ikke accepteres.
>
> Hvilken fejl fik du?
>
Kan jeg ikke huske lige nu. Kan lige vende tilbage med den.
>
> For resten - med mysql's rod i unix-verdenen er der en pæn
> sandsynlighed for at funktionsnavne er versalfølsomme; altså at
det
> ikke er ligegyldigt om du skriver now(), Now() eller NOW(). Jeg
> kender som nævnt ikke selv databaseprogrammet, men prøv evt at
> kigge i manualen.
>
Hmmm...det har jeg godt nok oplevet før - ikke lige med Now, men jeg
skrev forbogstavet med stort og - det virkede ikke, så jeg skrev det
med lille og så virkede det...
>
> > Jeg har dog fundet en anden udvej ved at bruge year(now),
> > month(now) osv... for så at sætte det hele sammen i en
> > variabel (f.eks. dato) og så skrive:
> > "Insert Into Tabel (Dato) values('" & dato & "')"
>
> O.k. - lidt bøvlet, men det virker.
>
He he...Ja, meget bøvlet, men som sagt: det virker

Mvh. René

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste