![]() |
![]() ![]() |
![]() |
-Zsert- |
![]()
Post
#1
|
Goście ![]() |
Czy on duplicate key update działa tak samo jak UPDATE tzn że aktualizuje rekordy ale o tym samym id czy działa jak replace tzn kasuje wskazany rekord i zapisuje jako rekord o innym id np. mam jakiś rekord o id 1 replace robi tak że kasuje ten rekord o id 1 i dodaje nowy o id 2. Jak działa on duplicate key update?
|
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
http://dev.mysql.com/doc/refman/5.0/en/ins...-duplicate.html
Cytat If you specify ON DUPLICATE KEY UPDATE, and a row is inserted that would cause a duplicate value in a UNIQUE index or PRIMARY KEY, an UPDATE of the old row is performed. For example, if column a is declared as UNIQUE and contains the value 1, the following two statements have identical effect:
INSERT INTO table (a,b,c) VALUES (1,2,3) ON DUPLICATE KEY UPDATE c=c+1; UPDATE table SET c=c+1 WHERE a=1; -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
-Zsert- |
![]()
Post
#3
|
Goście ![]() |
Ok dzięki. Efekt ten sam to spoko. A który bardziej byście polecali do używania tzn które jest wydajniejsze UPDATE czy On Duplicate key update np. w przypadku edycji newsów itp.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Jesli wiesz ze cos edytujesz to rób UPDATE. Do tego sluzy.
ON DUPLICATE KEY UPDATE sluzy do innych celow -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
-Zsert- |
![]()
Post
#5
|
Goście ![]() |
Do czego można on duplicate key update wykorzystać ?
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
przyklad:
robisz tabele i w niej trzymasz info ile razy z danego IP bylo odwolan. Robisz wiec:
Oczywisci kluczem jest IP. Jesli nie ma danego IP w bazie to wpisze ci rekord z danym IP i da ilosc =1. jesli IP jest to zwiekszy ilosc o 1. Nie musisz sie tu bawic w selecty sprawdzajace czy jest czy nie. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
-Zsert- |
![]()
Post
#7
|
Goście ![]() |
Też przydatne jest. Dzięki za wszystko
![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 08:34 |