/ 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
tid på server
Fra : Snoopy


Dato : 28-07-03 15:44

Hejsa :)

Jeg har et problem med en database på udenlandsk server, jeg har et felt i databasen som opdateres med NOW()
problemet er at serveren er 7 timer bagud - hvordan ligger jeg 7 timer til NOW() - kan det ikke gøres med NOW()+7 ??

Takker for hjælpen


 
 
Jens Gyldenkærne Cla~ (28-07-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 28-07-03 16:31

Snoopy skrev:

- hvordan ligger jeg 7 timer til
> NOW() - kan det ikke gøres med NOW()+7 ??

Næppe. 7-tallet kunne lige så godt opfattes som minutter eller
dage. Prøv at kigge på dateadd-funktionen. Jeg kan ikke huske den
præcise syntaks (men den kan findes på nettet) - et skud fra hoften
siger:

DateAdd('h', Now(), 7)
--
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

Snoopy (29-07-2003)
Kommentar
Fra : Snoopy


Dato : 29-07-03 06:06



> Næppe. 7-tallet kunne lige så godt opfattes som minutter eller
> dage. Prøv at kigge på dateadd-funktionen. Jeg kan ikke huske den
> præcise syntaks (men den kan findes på nettet) - et skud fra hoften
> siger:
>
> DateAdd('h', Now(), 7)
> --
> Jens Gyldenkærne Clausen

Ja det lyder som et fornuftigt forslag.

Skal man bare kunne udskifte NOW() med Dateadd(h Now(),7) i den INSERT sql string jeg har ?

Conn.Execute("INSERT INTO brugere (Username,time) VALUES ('" & oRS("Username") & "','" & Dateadd(h, Now(), 7) & "') & " er
tilføjet.')")


Jørn Andersen (29-07-2003)
Kommentar
Fra : Jørn Andersen


Dato : 29-07-03 11:49

On Tue, 29 Jul 2003 07:05:39 +0200, "Snoopy" <daffy0169@hotmail.com>
wrote:

>Skal man bare kunne udskifte NOW() med Dateadd(h Now(),7) i den INSERT sql string jeg har ?
>
>Conn.Execute("INSERT INTO brugere (Username,time) VALUES ('" & oRS("Username") & "','" & Dateadd(h, Now(), 7) & "') & " er
>tilføjet.')")

1. Det er ofte en god vane at konstruere Sql'en først og så eksekvere
den bagefter - så er det nemmere at debugge:
strSql = blabla
Conn.Execute(strSql)

2. Mener du ikke:
strSql = "INSERT INTO brugere (Username,time)" & _
" VALUES ('" & oRS("Username") & "'," & _
" DateAdd('h', Now(), 7))"
- ?

- Du kan lige så godt bruge *databasens* indbyggede funktioner
(DateAdd), så er du uafhængig af evt. forskelle i dato-*formatet*
mellem script og db.
- Der skal anførselstegn om 'h' i DataAdd

--
Jørn Andersen,
Brønshøj

Tom Jensen (28-07-2003)
Kommentar
Fra : Tom Jensen


Dato : 28-07-03 17:18

"Snoopy"
>
> Jeg har et problem med en database på udenlandsk server, jeg har et felt i
databasen som opdateres med NOW()
> problemet er at serveren er 7 timer bagud - hvordan ligger jeg 7 timer til
NOW() - kan det ikke gøres med NOW()+7 ??

Det kan det da sikkert, men det vil være mere læseligt
at bruge dateadd()
DateAdd(interval, number, date)
Så du skriver altså: NyTid = dateadd("d",7,date())

--
Med venlig hilsen

Tom Jensen
FF Soft
www.ffsoft.dk

Hent en gratis web shop



Snoopy (30-07-2003)
Kommentar
Fra : Snoopy


Dato : 30-07-03 06:05

> Så du skriver altså: NyTid = dateadd("d",7,date())
>
> --
> Med venlig hilsen
>
> Tom Jensen
> FF Soft
> www.ffsoft.dk
>
> Hent en gratis web shop
Hej Tom.

Ja, men jeg får en fejl, når jeg tilføjer den i min sql INSERT:

Den gamle:
Conn.Execute("INSERT INTO brugere (Username,time) VALUES ('" & oRS("Username") & "','" & Now() & "') & " er
tilføjet.')")

Den nye:
Conn.Execute("INSERT INTO brugere (Username,time) VALUES ('" & oRS("Username") & "','" & Dateadd("h", Now(), 7) & "') & " er
tilføjet.')")

Kan man ikke have den i ovenstående sætning ?? skal den tilføjes bagefter ??


Jørn Andersen (30-07-2003)
Kommentar
Fra : Jørn Andersen


Dato : 30-07-03 09:59

On Wed, 30 Jul 2003 07:04:59 +0200, "Snoopy" <daffy0169@hotmail.com>
wrote:

>Ja, men jeg får en fejl, når jeg tilføjer den i min sql INSERT:

*Hvilken* fejl? Det er svært at være synsk - i hvert fald for mig.
<url: http://www.asp-faq.dk/article/?id=41>

>Den gamle:
>Conn.Execute("INSERT INTO brugere (Username,time) VALUES ('" & oRS("Username") & "','" & Now() & "') & " er tilføjet.')")
>
>Den nye:
>Conn.Execute("INSERT INTO brugere (Username,time) VALUES ('" & oRS("Username") & "','" & Dateadd("h", Now(), 7) & "') & " er tilføjet.')")
>
>Kan man ikke have den i ovenstående sætning ?? skal den tilføjes bagefter ??

Du skal bare erstatte "h" med 'h' - ellers opfattes det som om
strengen bliver afbrudt.

Jeg spurgte i et tidligere indlæg, om det ikke var smartere at bruge
db'ens *egne* indbyggede funktioner:

strSql = "INSERT INTO brugere (Username,time)" & _
" VALUES ('" & oRS("Username") & "'," & _
" DateAdd('h', Now(), 7))"

Conn.Execute(strSql)

- forskellen er, at DateAdd-funktionen her er en del af SQL-strengen,
hvilket gør den ufølsom over for evt. sprog-forskelle mellem script og
db.
Men dit problem her er nok, at i stedet for at anvende et dato-tid
format til dit felt, så har du valgt at bruge tekst-format og så
tilføjet den "sjove" hale " er tilføjet."
Det synes jeg ikke er særligt hensigtsmæssigt, da du mister muligheden
for at bruge Sql til simple dato/tid-beregninger - og da det i øvrigt
er enklere blot at kode det i dit *output* fra db'en i stedet for i
dit *input*.

Blot min mening.

Good luck!

--
Jørn Andersen,
Brønshøj

Snoopy (30-07-2003)
Kommentar
Fra : Snoopy


Dato : 30-07-03 13:33

> Du skal bare erstatte "h" med 'h' - ellers opfattes det som om
> strengen bliver afbrudt.

med enkelte ' istedet for - udkommenterer den resten af sql sætningen
Hvad kan det være ?

>
> Jeg spurgte i et tidligere indlæg, om det ikke var smartere at bruge
> db'ens *egne* indbyggede funktioner:
>
> strSql = "INSERT INTO brugere (Username,time)" & _
> " VALUES ('" & oRS("Username") & "'," & _
> " DateAdd('h', Now(), 7))"
>
> Conn.Execute(strSql)

Jo, hvis det var gjort fra starten af - nu er det ret mange steder at rette




Jens Gyldenkærne Cla~ (31-07-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 31-07-03 22:25

Snoopy skrev:

[om at gemme datoer som datoer]
> Jo, hvis det var gjort fra starten af - nu er det ret mange
> steder at rette

Hvis det er den samme endelse ("er tilføjet") der er brugt på alle
poster, tager det ikke lang tid at ændre det. Du kan bruge søg og
erstat på feltet - husk at medtage mellemrummet før "er". Det kan
også gøres i en forespørgsel.
--
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

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