ďťż
Podstrony
|
telcocafemam w bazie z newsami 648 rekordów... jest tam kolumna 'kom' odpowiadająca za zamykanie mozliwości komentowania newsa jeśli przyjmuje wartość 'N'. jest 643 rekordy z wpisaną wartością 'N' i 5 najnowszych z wpisaną wartością 'T' (komentarze dozwolone). przy dodawaniu każdego kolejnego newsa ustawiana jest dla niego wartość 'T' a następnie wykonywane jest polecenieUPDATE newsy SET kom = "N" WHERE kom = "T" limit ??? gdzie ??? to ilość wszystkich rekordów minus 5. i tu jest problem: dlaczego w tym momencie baza ustawia wartość 'N' we wszystkich rekordach zamiast pozostawić 5 najnowszych bez zmiany? kiedy sprecyzuję zapytanie i wpiszęUPDATE site_newsy SET kom = "N" WHERE kom = "T" limit 0,??? to wysypuje błąd <_< a może jest jakiś inny sposób na aktualizację określonego przedziału rekordów? ponieważ po dodaniu nowego newsa w tabeli masz tylko 6 rekordów z wartością "T" a ty aktualizujesz (wszystkie - 5) co powoduje że wszystkie "T" ci sie na "N" zamieniają to jest błąd logiczny limit powinien wynosić 1 czyli tyle ile w danej chwili newsów dodałeś ahh.. no tak... dobra juz kapuje - mój błąd. no i to jest rozwiązanie na jeden ostatni rekord, a teraz: jak sformułować zapytanie aby baza ustawiła każde 'T' na 'N' we wszystkich rekordach oprócz 5-ciu ostatnich... :> bo to mnie bardziej interesuje mam w bazie z newsami 648 rekordów jest 643 rekordy z wpisaną wartością 'N' i 5 najnowszych z wpisaną wartością 'T' masz już 643 rekordy z 'N' i 5 najnowszych z 'T' dodajesz nowego newsa czyli masz: 649 rekordów w tym 643 z 'N' i 6 z 'T' i robisz zapytanie takie jak napisałem tylko i wyłącznie na najstarszy z tych 6 rekordów - 1 x UPDATE zamieniający 'T' na 'N' teraz masz: - 649 rekordów - 644 z 'N' - 5 z 'T' czyli tak jak chciałeś :) no ok ok. czaje o co Ci chodzi... ale mi chodzi o to co zrobić jakby np w tabeli znajdował się rekord 16 i przypadkiem był ustawiony na 'T'. jak mam 648 rekordów to jakie machnąć zapytanie aby baza sobie wśród pierwszych 643 wyszukała wartość 'T' i ustawiła ją na 'N' :> ? Użytkownik sdr edytował ten post 20 sierpień 2005, 10:09 no ok ok. czaje o co Ci chodzi... ale mi chodzi o to co zrobić jakby np w tabeli znajdował się rekord 16 i przypadkiem był ustawiony na 'T'. jak mam 648 rekordów to jakie machnąć zapytanie aby baza sobie wśród pierwszych 643 wyszukała wartość 'T' i ustawiła ją na 'N' :> ? nooo... i działa :) o to mi chodziło. thx... gdybyś nie naprowadził mnie na właściwy tor pewnie jeszcze kilka dni bym nad tym myślał ;) :] danke danke |
|||
Sitedesign by AltusUmbrae. |