Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dodawanie zduplikowanych danych
zelu
post
Post #1





Grupa: Zarejestrowani
Postów: 229
Pomógł: 34
Dołączył: 7.12.2008
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Witam,

kieruję do bazy następujące zapytanie:

  1. INSERT INTO messages_users( message_id, user_id ) SELECT id, {$user_id} FROM messages WHERE channel_id = {$channel_id}


Dodatkowo mam założone UNIQUE na (message_id, user_id).

Jest to zapytanie oznaczające wszystkie wiadomości w danym kanale jako przeczytane.

Wszystko działa fajnie do czasu kiedy w bazie jest już unikatowa para (message_id, user_id). Wtedy co naturalne serwer wyrzuca błąd. I teraz moje pytanie: czy da się jakoś zgrabnie to obejść bez uprzedniego sprawdzania czy podane wartości są już w bazie?
W MySQL jest ON DUPLICATED KEY. Niestety w postgresie nic takiego nie znalazłem.


Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Zbłąkany
post
Post #2


Administrator serwera


Grupa: Developerzy
Postów: 521
Pomógł: 13
Dołączył: 2.04.2004
Skąd: 52°24' N 16°56' E

Ostrzeżenie: (0%)
-----


Coś mi śmierdzi w Twojej wypowiedzi. Jak masz klucz UNIQUE na dwóch kolumnach, to niemożliwe jest, byś posiadał w tabeli dwa lub więcej rekordów z powtórzoną kombinacją jednego z nich, bądź obu na raz (zajrzałbym tutaj, a także przeczytałbym jeszcze to ze szczególnym uwzględnieniem punktu 11.8) (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.06.2026 - 11:12