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

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Function i MySql
Fra : Jesper L Hansen


Dato : 16-05-01 13:08

Hejsa,

jeg forstår ikke helt meningen meningen med function feltet i en MySql
db.
Der er 4 felter som jeg udfylder med fx:

'Field' = opdateret
'Type' = timestamp(8)
'Function' = NOW
'Value' = 20011605 (som den selv sætter)

Det virker også fint når jeg saver databasen husker den datoen, men
næste gang jeg laver en 'edit' er NOW ikke udfyldt mere også bliver
opdaterings datoen ikke ændret.

Hvorfor forsvinder NOW i fleltet Function til næste gang jeg åbner
igen databasen igen ?

PS. Har kigget i mysql-manualen men fandt ikke svaret.

Med venlig hilsen
Jesper L Hansen

 
 
Christian Joergensen (16-05-2001)
Kommentar
Fra : Christian Joergensen


Dato : 16-05-01 14:00

Jesper L Hansen <lismoes@mail.dk> wrote:

> jeg forstår ikke helt meningen meningen med function feltet i en MySql
> db.

Jeg forstår ikke helt meningen med dit indlæg, men går ud fra at du bruger
phpMyAdmin :)

> Der er 4 felter som jeg udfylder med fx:
>
> 'Field' = opdateret
> 'Type' = timestamp(8)
> 'Function' = NOW
> 'Value' = 20011605 (som den selv sætter)

Når du bruger timestamp-datatypen skal du ikke angive noget i function,
eller value - Den sørger selv for at holde sig opdateret. Så snart der
bliver foretaget en update på rækken hvor kolonnen 'opdateret' ikke er
nævnt opdateres den automatisk med et nyt timestamp

> Det virker også fint når jeg saver databasen husker den datoen, men
> næste gang jeg laver en 'edit' er NOW ikke udfyldt mere også bliver
> opdaterings datoen ikke ændret.

Husk at der ikke skal stå noget i function, og i value kan du evt. skrive
NULL.

<http://www.mysql.com/doc/D/A/DATETIME.html>

--
Christian Jørgensen | "Ford, you're turning into a penguin"
http://www.razor.dk | "Stop it"

Jesper L Hansen (17-05-2001)
Kommentar
Fra : Jesper L Hansen


Dato : 17-05-01 13:06

On Wed, 16 May 2001 14:59:33 +0200, Christian Joergensen
<mail@phpguru.dk> wrote:

>Jeg forstår ikke helt meningen med dit indlæg, men går ud fra at du bruger
>phpMyAdmin :)

Ja, det glemte jeg at skrive

>Når du bruger timestamp-datatypen skal du ikke angive noget i function,
>eller value - Den sørger selv for at holde sig opdateret. Så snart der
>bliver foretaget en update på rækken hvor kolonnen 'opdateret' ikke er
>nævnt opdateres den automatisk med et nyt timestamp

Det virker bare ikke her. Første gang jeg tilføjer en 'opdateret' med
en Timestamp(8) i TYPE og ikke andet virker det fint og den gemmer med
dags dato. Hvis jeg dagen efter retter i et andet felt i rækken og
gemmer er det stadig den gamle dato der kommer till at stå i
'opdateret'

Med venlig hilsen
Jesper L Hansen

Stefan Bruhn (17-05-2001)
Kommentar
Fra : Stefan Bruhn


Dato : 17-05-01 13:19

On Thu, 17 May 2001 14:06:02 +0200, Jesper L Hansen <lismoes@mail.dk>
wrote:

>Det virker bare ikke her. Første gang jeg tilføjer en 'opdateret' med
>en Timestamp(8) i TYPE og ikke andet virker det fint og den gemmer med
>dags dato. Hvis jeg dagen efter retter i et andet felt i rækken og
>gemmer er det stadig den gamle dato der kommer till at stå i
>'opdateret'

Det er da vist sådan phpMyAdmin virker.
Den henter selv feltets indhold frem.
Hvis du vil have ændret det til noget nyt skal du slette indholdet og
skrive null

--
Mvh. / Regards Stefan Bruhn

$email = array(115,116,101,102,97,110,64,98,114,117,104,110,46,116,111);
for ($i=0;$i<=15;$i++) {echo chr($email[$i]);}

Christian Joergensen (17-05-2001)
Kommentar
Fra : Christian Joergensen


Dato : 17-05-01 13:23

Jesper L Hansen <lismoes@mail.dk> wrote:

> Hvis jeg dagen efter retter i et andet felt i rækken og
> gemmer er det stadig den gamle dato der kommer till at stå i
> 'opdateret'

Prøv at skrive NULL i value når du opdaterer

--
Christian Jørgensen | "Ford, you're turning into a penguin"
http://www.razor.dk | "Stop it"

Jesper L Hansen (17-05-2001)
Kommentar
Fra : Jesper L Hansen


Dato : 17-05-01 13:42

On Thu, 17 May 2001 14:22:41 +0200, Christian Joergensen
<mail@phpguru.dk> wrote:

>Prøv at skrive NULL i value når du opdaterer

Ja det virker, men det var nu smartere hvis det kunne laves så der
automatisk blev opdateret dato, når der ændret i en række vha
phpmyadmin.
Ellers er der nok en chance for at det glemmes.

Med venlig hilsen
Jesper L Hansen

Christian Joergensen (17-05-2001)
Kommentar
Fra : Christian Joergensen


Dato : 17-05-01 13:52

Jesper L Hansen <lismoes@mail.dk> wrote:

>>Prøv at skrive NULL i value når du opdaterer
>
> Ja det virker, men det var nu smartere hvis det kunne laves så der
> automatisk blev opdateret dato, når der ændret i en række vha
> phpmyadmin.
> Ellers er der nok en chance for at det glemmes.

Du kunne jo skrive et interface selv.

--
Christian Jørgensen | "Ford, you're turning into a penguin"
http://www.razor.dk | "Stop it"

Jesper L Hansen (17-05-2001)
Kommentar
Fra : Jesper L Hansen


Dato : 17-05-01 15:32

On Thu, 17 May 2001 14:51:46 +0200, Christian Joergensen
<mail@phpguru.dk> wrote:

>Du kunne jo skrive et interface selv.

Det bliver nok enden på det, det vil nok også være smartere så er der
andre der kan opdatere på det.

Med venlig hilsen
Jesper L Hansen

Robert Piil (17-05-2001)
Kommentar
Fra : Robert Piil


Dato : 17-05-01 14:09

On Thu, 17 May 2001 14:06:02 +0200, Jesper L Hansen <lismoes@mail.dk>
wrote:

>Det virker bare ikke her. Første gang jeg tilføjer en 'opdateret' med
>en Timestamp(8) i TYPE og ikke andet virker det fint og den gemmer med
>dags dato. Hvis jeg dagen efter retter i et andet felt i rækken og
>gemmer er det stadig den gamle dato der kommer till at stå i
>'opdateret'

Hvis du bruger phpMyAdmin til at opdatere med, opdaterer du alle
felter i rækken, også selvom du ikke skriver noget i dem. I de
tilfælde ændres timestamp - ganske som beskrevet i manualen - ikke.
Prøv at ændre på en enkelt kolonne i rækken direkte, så skulle
timestamp-kolennen gerne opdateres.


--
Med venlig hilsen
Robert Piil
http://rpiil.dk

Jesper L Hansen (17-05-2001)
Kommentar
Fra : Jesper L Hansen


Dato : 17-05-01 15:38

On Thu, 17 May 2001 15:09:12 +0200, Robert Piil <piil@nospam.dk>
wrote:

>Hvis du bruger phpMyAdmin til at opdatere med, opdaterer du alle
>felter i rækken, også selvom du ikke skriver noget i dem. I de
>tilfælde ændres timestamp - ganske som beskrevet i manualen - ikke.

Ja det er gået op for mig nu, jeg troede bare at den også tog
timestamp med ved opdatering

>Prøv at ændre på en enkelt kolonne i rækken direkte, så skulle
>timestamp-kolennen gerne opdateres.

Jeg er ikke helt med på hvad du mener med ændre i en enkelt kolonne ?

Med venlig hilsen
Jesper L Hansen

Robert Piil (17-05-2001)
Kommentar
Fra : Robert Piil


Dato : 17-05-01 16:37

On Thu, 17 May 2001 16:38:14 +0200, Jesper L Hansen <lismoes@mail.dk>
wrote:

>Jeg er ikke helt med på hvad du mener med ændre i en enkelt kolonne ?

Nøjes med at lave en update på et[1] af felterne i din række, fx med
et sql-kald a la:

UPDATE tabel SET navn=Jesper where id=1;


[1] eller flere af felterne, blot du ikke laver en update på
timestamp-feltet.


--
Med venlig hilsen
Robert Piil
http://rpiil.dk

Robert Piil (17-05-2001)
Kommentar
Fra : Robert Piil


Dato : 17-05-01 16:48

On Thu, 17 May 2001 17:36:48 +0200, Robert Piil <piil@nospam.dk>
wrote:

>UPDATE tabel SET navn=Jesper where id=1;

Der skal forøvrigt nok gnyffer omkring 'Jesper'.


--
Med venlig hilsen
Robert Piil
http://rpiil.dk

Jesper L Hansen (17-05-2001)
Kommentar
Fra : Jesper L Hansen


Dato : 17-05-01 17:07

On Thu, 17 May 2001 17:48:16 +0200, Robert Piil <piil@nospam.dk>
wrote:

>>UPDATE tabel SET navn=Jesper where id=1;

God idé - det gør jeg

Med venlig hilsen
Jesper L Hansen

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

Månedens bedste
Årets bedste
Sidste års bedste