![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 574 Pomógł: 2 Dołączył: 13.04.2004 Skąd: Lublin Ostrzeżenie: (0%)
|
Witam,
czy wiem ktoś czy jest jakaś komenda w mysql która zamienia miejscami ze sobą dwa rekordy (np. o id=2 i id=5) (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) php mogę to zrobić ale to będzie aż 4 zapytabia do bazy: - zanaczenie rekordu o id=2 - zanaczenie rekordu o id=5 - zapisanie tego co jest w 2 na 5 - zapisanie tego co jest w 5 na 2 Można to zrobić szybciej w mysql? pozdr, |
|
|
|
Post
#2
|
|
|
Grupa: Zarząd Postów: 2 277 Pomógł: 6 Dołączył: 27.12.2002 Skąd: Wołów/Wrocław |
Ale swoją drogą - jest to raczej mało logiczne żądanie, i naprawdę trudno mi wymyślić sytuację, gdzie taka operacja byłaby konieczna. Niestety - rozwiązanie takie nie zadziała (chyba (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) ) jeżeli Id jest kluczem głównym, czyli unikalnym. |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 574 Pomógł: 2 Dołączył: 13.04.2004 Skąd: Lublin Ostrzeżenie: (0%)
|
id jest kluczem głównym i raczej nie zadziała :/
będę musiał się chyba poratować phpem |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 19.05.2005 Ostrzeżenie: (0%)
|
mozna wiedziec po co chcesz to zamieniac? przeciez skoro cos zrobiles kluczem glownym to chyba wlasnie po to aby dany rekord byl jednoznacznie identyfikowalny prawda? a w momencie kiedy pozwolisz na takie zamiany to juz ten warunek nie bedzie spelniony, ale jesli np ma to sluzyc kolejnosci wyswietlania to mozesz dodac kolejna kolumne w ktorej bys sobie wlasnie sposobem opisanym wyzej wszystko ustawial, jezeli natomiast chodzi dokladnie o zamiane wartosci rekordu o id=2 z tym o id=5 to przeciez mozesz zawsze napisac sqla ktory zamieni ci wszystkie pola zostawiajac id nie zmienione - efekt bedzie ten sam...
|
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 1 660 Pomógł: 13 Dołączył: 9.06.2004 Skąd: Wrocław i okolice Ostrzeżenie: (0%)
|
|
|
|
|
![]() ![]() |
|
Aktualny czas: 21.12.2025 - 08:20 |