Avatar billede prince10 Nybegynder
16. september 2003 - 23:01 Der er 5 kommentarer og
1 løsning

indsætte now() i Datetime i ms-sql

Jeg har et lidt mærkeligt problem med sql-serveren.
Jeg har et profilsystem, hvor jeg skal have opdateret lastsignin dato med now() ved login i systemet - det virker lokalt, men ikke på hostingserveren:

Set Rs = Conn.Execute("SELECT userid, lastsignin FROM users WHERE userid=" & session("userid") & ";")
strSQL = "UPDATE users SET lastsignin='" &now()& "' where userid = " & session("userid")
Conn.Execute strSQL
rs.close
Conn.Close
set Conn= nothing

Det virker lokalt, hvor jeg kører en win2003-server med dansk opsætning - sql-db kører ens i opsætning på lokalt og hostingserver -

kører jeg en:<%response.write session.lcid%> får jeg 1033 loaklt og 2048 på hostingserveren...
Hvordan får jeg lige sat den dato ind - og hvad skal jeg evt konvertere til...
Avatar billede eagleeye Praktikant
16. september 2003 - 23:03 #1
Hvis du vil havde now i så brug den interne now funktion i dtabasen:

strSQL = "UPDATE users SET lastsignin=now() where userid = " & session("userid")
Avatar billede ellebaek Nybegynder
16. september 2003 - 23:05 #2
Set Rs = Conn.Execute("SELECT userid, lastsignin FROM users WHERE userid=" & session("userid") & ";")
strSQL = "UPDATE users SET lastsignin=now() where userid = " & session("userid")
Conn.Execute strSQL
rs.close
Conn.Close
set Conn= nothing
Avatar billede eagleeye Praktikant
16. september 2003 - 23:18 #3
det kan forøvrigt være den ikke hedder now i mssql, men curdatetime

strSQL = "UPDATE users SET lastsignin=CurDateTime where userid = " & session("userid")
Avatar billede prince10 Nybegynder
16. september 2003 - 23:53 #4
Det virker ikke noget af det foreslåede - Fandt en løsning med en stored procedure istedet - her kunne jeg anvende getdate():

Aspkoden:
Set objcomm = Server.CreateObject("ADODB.command")
objcomm.ActiveConnection = conn
objcomm.Commandtext = "sp_updatelastsignin"
objcomm.commandType = adCmdStoredProc
Set objparam = objcomm.createparameter ("@userid",adInteger, adparaminput)
objcomm.parameters.append objparam
objcomm.parameters("@userid") = session("userid")
set rs = objcomm.execute
set objcomm = nothing
set objparam = nothing

Stored Procedure:
CREATE PROCEDURE [dbo].[sp_updatelastsignin]
@userid int
AS
UPDATE users SET users.lastsignin=getdate()
Where
        userid = @userid
GO
Avatar billede ldanielsen Nybegynder
16. september 2003 - 23:53 #5
Den hedder GETDATE()

UPDATE users SET lastsignin=GETDATE() where ...
Avatar billede ldanielsen Nybegynder
16. september 2003 - 23:54 #6
Too late :o)
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

Seneste spørgsmål Seneste aktivitet
I går 21:00 Libre Office Impress Af Frank i Andre styresystemer
I går 11:47 VB script Af Jenshentze i Word
I går 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel