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

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
[MySQL] Aktuel dato som default værdi DATE~
Fra : Jakob Andersen


Dato : 14-10-02 13:05

Hej Gruppe

Jeg sidder som regel og roder med MS SQL eller postgreSQL men nu har jeg
fået æren af at rode lidt med en mySQL, og der er en ting der undrer mig.

Kan det ikke lade sig gøre i et felt af type DATE (_ikke_ timestamp) at
sætte en defaultværdi der indsætter dags dato i nye rækker?

Der står i manualen at man ikke kan bruge funktioner og expressions i
default delen af en CREATE TABLE men det kan da næsten ikke passe..

--
Jakob Andersen



 
 
Anders Hertz (15-10-2002)
Kommentar
Fra : Anders Hertz


Dato : 15-10-02 09:18

On Mon, 14 Oct 2002 14:04:51 +0200, "Jakob Andersen"
<jakob@effectus.dk> wrote:

>Hej Gruppe
>
>Kan det ikke lade sig gøre i et felt af type DATE (_ikke_ timestamp) at
>sætte en defaultværdi der indsætter dags dato i nye rækker?
>
Dette kan du gøre ved indsættelses tidspunktet vha. funktion Curdate.
Ellers læs mere her:
http://www.mysql.com/doc/en/Date_and_time_functions.html#IDX1295

/Anders

Jakob Andersen (15-10-2002)
Kommentar
Fra : Jakob Andersen


Dato : 15-10-02 10:08

"Anders Hertz" <a_hertz.ReMoVe@yahoo.com> wrote
> Dette kan du gøre ved indsættelses tidspunktet vha. funktion Curdate.
> Ellers læs mere her:
> http://www.mysql.com/doc/en/Date_and_time_functions.html#IDX1295

Ja, men jeg vil gerne være fri for at skulle gøre det selv i min INSERT,
således at CURDATE() er defaultværdien i feltet.

--
Jakob Andersen



Jesper Brunholm (15-10-2002)
Kommentar
Fra : Jesper Brunholm


Dato : 15-10-02 10:51

Jakob Andersen wrote:
> "Anders Hertz" <a_hertz.ReMoVe@yahoo.com> wrote
>
>>Dette kan du gøre ved indsættelses tidspunktet vha. funktion Curdate.
>>Ellers læs mere her:
>>http://www.mysql.com/doc/en/Date_and_time_functions.html#IDX1295
>
>
> Ja, men jeg vil gerne være fri for at skulle gøre det selv i min INSERT,
> således at CURDATE() er defaultværdien i feltet.

Hvad er det så der er galt med TIMESTAMP - du kan jo definere den ned
til at ligne en DATE til forveksling (TIMESTAMP 12), og der er ikke
noget til hinder for at bruge DATE_FORMAT når du udtrækker (i hvert fald
har jeg lige testet dette med succes:

SELECT DATE_FORMAT(Timestamp,'%M') FROM `users` WHERE Id=1
)
?

mvh

Jesper Brunholm

--
Phønix - dansk folk-musik fra unge musikere - http://www.phonixfolk.dk


Jakob Andersen (15-10-2002)
Kommentar
Fra : Jakob Andersen


Dato : 15-10-02 10:56

"Jesper Brunholm" <nospam@brunholm-scharff.dk> wrote
> Hvad er det så der er galt med TIMESTAMP - du kan jo definere den ned
> til at ligne en DATE til forveksling (TIMESTAMP 12)

Det har jeg også gjort indtil videre


> SELECT DATE_FORMAT(Timestamp,'%M') FROM `users` WHERE Id=1

Som du selv pointerer så giver det mig noget mere at tage højde for hvergang
jeg udtrækker datoen, og det er det jeg ønsker at undgå


--
Jakob Andersen



Jesper Brunholm (15-10-2002)
Kommentar
Fra : Jesper Brunholm


Dato : 15-10-02 14:42

Jakob Andersen wrote:
>>SELECT DATE_FORMAT(Timestamp,'%M') FROM `users` WHERE Id=1
>
> Som du selv pointerer så giver det mig noget mere at tage højde for hvergang
> jeg udtrækker datoen, og det er det jeg ønsker at undgå

Det pointerede jeg egl ikke bevidst - jeg prøvede bare at forstå hvad
der var dit problem - hvis du bare vil have "20021015" ud så kan jeg
stadig ikke se noget problem i en timestamp(8)-løsning.

mvh

Jesper Brunholm

--
Phønix - dansk folk-musik fra unge musikere - http://www.phonixfolk.dk


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

Månedens bedste
Årets bedste
Sidste års bedste