![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 220 Pomógł: 19 Dołączył: 25.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam tabelę:
Kombinacja id_testu i id_uzytkownika jest w tej tabeli unikalna. Jeśli użytkownik rozwiąże test to zwiększa się licznik (czyli wartość w kolumnie rozwiazany) o 1. Chcę wyeliminować kolumnę rozwiązany. Czyli jeśli jakiś użytkownik rozwiązał jakiś test 15 razy, to dotychczasowy 1 rekord ma się zmienić w 15 nowych. Chcę wyeliminować kolumnę rozwiązany ale zachować wszystkie dane. Jak to zrobić? Tabela zawiera już sporo rekordów więc o ręcznej konwersji nie ma mowy. Logiczne wydaje się napisanie jakiegoś skryptu php. Ale może są jakieś sprytniejsze metody, np za pomocą samego sql? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1. Klucz obejmujący kolumny id_testu i id_użytkownika nie będzie mógł być dłużej unikalny.
2. Utwórz sobie nową tabelę (by nie operować na oryginale) z docelową strukturą. 3. Napisz skrypt, który wrzuci do nowej tabeli dane na podstawie danych ze starej (tj. odczytujesz rekord i do nowej wrzucasz jego okrojoną (o kolumnę rozwiązane) wersję w ilości równej wartości z kolumny rozwiązane). |
|
|
![]() ![]() |
![]() |
Aktualny czas: 14.10.2025 - 01:35 |