ďťż

sunsetting

photo

Problem jest taki. Tworzę sobie bazę dancyh, dodaję rekord:

Kod: INSERT INTO `zadania`
  (
    `zapytanie` ,
    `opis` ,
    `okres` ,
    `ilosc_cykli` ,
    `licznik_cykli` ,
    `czas_stworzenia` ,
    `uzytkownicy_login`
  )
VALUES
  (
    '"program for linux"', NULL , '1', '14', '0', NOW( ) , 'ciembor'
  );

i wszystko jest fajnie... do momentu aktualizacji pola licznik_cykli:

Kod:   function zmien_licznik_cykli($id, $login, $cykl)
  {
    if(!sql_zapytanie("UPDATE zadania
                       SET licznik_cykli = $cykl
                       WHERE id = $id AND uzytkownicy_login = '$login'"))
    {
       return mysql_error();
    }
  }

Po wywołaniu tej funkcji, poza licznikiem cykli zmienia się także czas_stworzenia. Jak dodać nowy rekord z timestampem czasu stworzenia, który nie będzie się aktualizował wraz z innymi polami? Rzecz jasna chodzi mi o zrobienie tego z poziomu SQL, nie PHP.


zapytanie w podanej funkcji nie powinno modyfikować czasu na aktualny chyba że...
w create table jest DEFAULT NOW() - nie testowałem czy takie coś jest wogóle możliwe ale może to być przyczyną.
Jakiego typu masz pola? Jesli jest to timestamp, wtedy jest automatycznie aktualizowane w momencie zmiany wiersza

Cytat: The TIMESTAMP data type offers automatic initialization and updating. You can choose whether to use these properties and which column should have them:

Zobacz caly opis a zrozumiesz

http://dev.mysql.com/doc/.../timestamp.html

Jesli chcesz trzymac date utworzenia to w trakcie insert daj NOW(), a typ pola DATETIME, wtedy wartosc bedzie stala

Swoja droga dlugi czas nie mialem stycznosci z MYSQL, wiec nie wiem do konca co sie teraz w nim dzieje.
Dzięki za odpowiedzi, w MySQL podobno tak już jest, że jak się aktualizuje jakiś rekord, to aktualizują się automatycznie wszystkie timestampy. Rozwiązanie trywialne: czas_stworzenia = czas_stworzenia. Już nie będę zmieniał typu pola na DATETIME, bo jutro oddaję projekt, a wypadałoby mieć już jakieś wyniki w bazie;).
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • kazimierz.htw.pl