01. maj 2002 - 10:09
Der er
18 kommentarer og 1 løsning
Automatisk indsætte now() i et integer felt
INSERT INTO XXXX (logDateTime) VALUES CAST { fn NOW() as integer) Jeg vil gerne bruge ms sql now() funktion til at oprette et UNIX timestamp i et integer felt. Hvordan?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
Kan du ikke bruge timestamp (rowversion på SQL Server 2K)?
Kan du ikke lave en Convert eller Cast på GETDATE()?
Der er en anden felttype du burde kunne bruge, nemlig en Timestamp. Jeg kender ikke Unix timestamp, men vil tro det er det samme.
stigc>wouldnt it be more logical to convert the integer field to a date time?
Nu ved jeg ikke helt hvad et UNIX timestam er, men på en MSSqlserver hedddder den gunnktion du taler om getDate(), så det vliver: Insert into xxx (logDateTime) Values (convert(integer, getDate()))
INSERT INTO ProdBundtLog (logDateTime) VALUES (CONVERT(integer, GETDATE())) indsætter "37375" hvilket ikke kan sammenlignes med en unix Time stamp. Felter er en integer og kan ikke ændres!
what format does a UNIX time stamp have?
sekunder siden 1970, eller sådan noget.
Well I dont think ANY of the suggestions here can help you with that.
Hvad med at bruge en DATADIFF sådan her: DATEDIFF(ss, '1970-01-01 00:00:00', getdate())
declare @D as datetime set @D = getdate() declare @Base as datetime set @Base = '19700101' select @Base, @D, datediff(ss, @Base, @D)
Måske skulle jeg smide et svar
moonduck> Hvis du hentyder til mig, så havde jeg ikke opdateret browseren med de nyeste svar, da jeg smed mit svar afsted :-/
benny.tordrup> Nej, Nej, jeg hentyder ikke til dig. Jeg lagde bare lige mærke til at jeg kun havde kommenteret og ikke svaret.
moonduck> Sådan er det jo nogle gange med default indstillinger ;-)
Sårn... det er godt nok et kommatal, men what the f. Gang op hvis dy ikke synes det er pænt... select convert(float, getDate()) reversibel med: select convert(dateTime, 37375.558926041667) /Jesper
ja datediff virkede... den med float virker sikkert også. Takker.
Computerworld tilbyder specialiserede kurser i database-management