Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] Dwuznaczne zapytanie, z wykorzystaniem IF lub czegoś innego
SJ_Royd
post 9.10.2008, 17:56:14
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 11.07.2006
Skąd: Łódź

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


Nie wiem jak skonstruować zapytanie do bazy tak, żeby sprawdziło, czy rekord o podanych danych istnieje w tabeli (*1) i w zależności od tego zaktualizuje go (*2) lub wstawi nowy (*3)

*1
Kod
SELECT count(*) FROM tbl WHERE UID = {uid} AND AID = {aid};


*2
Kod
UPDATE tbl SET Cena = {cena} WHERE  UID = {uid} AND AID = {aid};


*3
Kod
INSERT INTO tbl VALUES (null,  {uid}, {aid}, {cena});


Mam na myśli coś takiego
Kod
IF (SELECT count(*) FROM tbl WHERE UID = {uid} AND AID = {aid}) > 0 THEN
  UPDATE tbl SET Cena = {cena} WHERE  UID = {uid} AND AID = {aid}
ELSE
  INSERT INTO tbl VALUES (null,  {uid}, {aid}, {cena})
END IF


{uid}, {aid}, {cena} - jakies dane przekazane z php'a
Niestety takie coś nie działa i wyrzuca błąd, a nie chcę do tego angażować php'a bo wg założenia to MySQL ma zająć się tą sprawą
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 18:25