webForumDet fria alternativet

getdate()

12 svar · 269 visningar · startad av Erik Juhlin

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#1

Går det att i mySQL ange ett värde som default värde i ett fält som man automagiskt får inte datumet för när det skapades..?

Som getdate() i SQL Server. :)

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Nej, det går inte att sätta ett datum som defaultvärde i Mysql (Jag förstår inte varför). Du får titta på timestamp-kolumner.

http://www.mysql.com/doc/en/DATETIME.html

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#3

Lägger Timestamp dagens datum när man skapar en ny rad eller när man sparar en ny/befintlig rad?

PaceMedlem sedan juni 20019 024 inlägg
#4

Timestamp uppdateras med dagens datum + tid så fort du slänger in en ny post eller redigerar en befintlig (med andra ord, om du har en redan inlagd post så kommer dess timestamp fält att uppdateras).

Jörgen HPMedlem sedan feb. 20012 412 inlägg
#5

Pace skrev:

Timestamp uppdateras med dagens datum + tid så fort du slänger in en ny post eller redigerar en befintlig (med andra ord, om du har en redan inlagd post så kommer dess timestamp fält att uppdateras).

Tänk på att om du har flera timestamps i en tabell, då är det bara den första i listan som uppdateras. :)

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#6

Hur gör man om man bara vill ha ett datum när posten läggs till?

@ndersMedlem sedan juni 200032 969 inlägg
#7

Finns det ingen vanlig datum/tid-datatyp? Använd i så fall den, gör en insert med current_timestamp som värde i det fältet, och ge 17 i att uppdatera det fältet senare. :)

Mvh,

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#8

Okej, så man sätter det som default value? Det var ju det jag eftersökte i mitt första inlägg. :)

@ndersMedlem sedan juni 200032 969 inlägg
#9

Nej, du kan inte sätta det som defaultvärde i MySQL av någon anledning, helt enligt LarsGs inlägg. Du fårr lägga med det i din Insert.

Mvh,

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#10

Det är ju väldigt opraktiskt. Sånt vill inte jag pilla med där. Jag vill att databasen ska sköta det helt själv... :l

Jörgen HPMedlem sedan feb. 20012 412 inlägg
#11

Jag brukar använda fälttypen datetime, och sedan skicka med Now() i sql-frågan. :)

Erik JuhlinMedlem sedan maj 200010 687 inlägg
#12

Jo, men jag vill ju inte skriva det i någon SQL-fråga utan vill att databasen själv ska ta hand om det. Fältet används nästan bara för att om något skulle gå fel i databasen så är det enkelt att se vad som är skapat efter att felet inträffat.

PaceMedlem sedan juni 20019 024 inlägg
#13

Det är några av de saker som gör MySQL dåligt. ;)

Jag gör som Jörgen, skickar med alla datum med SQL. Det blir till slut en vana och jag tänker numera aldrig på det (tidigare använde jag Jet/Access och Now() som standardvärde).

253 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
120 ms — hämta statistik (db)
131 ms — hämta tråd, inlägg och bilagor (db)