![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 6.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam tabele o strukturze: id - INT, Autoincrement nazwa - VARCHAR baza - TINYINT data - DATE wartosc - INT Służy ona jako cache. Czasami aktualizuje niektóre rekordy w cache-u i chciałbym by SQL myślał czy dany rekord usunąć i wstawić nowy, czy po prostu dodać (jeżeli ten nie istnieje). Znalazłem informacje na temat ON DUPLICATE KEY UPDATE, jednak dane pole musi być PRIMARY bądź UNIQUE. Natomiast u mnie unikalny rekord to taki, który ma identyczną nazwę i identyczną datę (jednocześnie). W przypadku tej samej daty, a różnych nazw i wicewersa dany rekord dla mnie nie jest unikalny. Czy można to jakoś załatwić przez SQL-a, czy muszę tworzyć własną logikę? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat , który ma identyczną nazwę i identyczną datę (jednocześnie) Przeciez mozesz zalozyc UNIQUE na dwa pola jednoczesnie.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 6.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
No, a SQL będzie traktował rekord unikalny w sposób data i nazwa jednocześnie (to co chcę), czy data lub nazwa jednocześnie (to czego się obawiam)?
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Przeciez ci powiedzialem ze mozesz zalozyc UNIQUE z obu pól, wiec baza bedzie patrzyla przy takim UNIQUE jako calosc. Nie albo jedno albo drugie, tylko oba naraz.
Tylko masz zrobic jeden UNIQUE z obu pol a nie dwa UNIQUE na kazde pole osobno -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 72 Pomógł: 10 Dołączył: 2.02.2008 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 16:15 |