Topic: insert su sąlyga

man įdomu ar įmanoma kaipnors prie užklausos kuri įterpia duomenis, prisegti sąlyga.
tarkim turim lentelę su tokia struktūra:
id | user_id | game_id | status
...
...
...
ir įterpdamas duomenis į lentelę, noriu patikrinti, ar rašomi duomenys lentelėj neegzistuoja (konkrečiai game_id ir status. pasatarasis turi tik dvi reikšmes). čia galima išsiverst su viena užklausa, ar visgi prieš tai teks daryt SELECT'ą (tokį variantą dabar ir naudoju)?

Su sąlyga, kad šūdo nebus...

Re: insert su sąlyga

Ant game_id ir status stulpelių poros uždėk, kad jie yra UNIQUE (indeksas) tada drąsiai įterpinėk informacija nepamiršdamas apdoroti klaidų pranežimų (teks susirasti MySQL klaidos, kodą, kuris reiškia, kad pažeista unikalumo sąlyga - tokia reikšmių pora stulpeliuose jau yra). Tokiu būdu užteks vieno INSERT'o, MySQL'as pats viską patikrints daug greičiau ir efektyviau.