Autor Zpráva
max
Profil *
Přeji hezké sobotní ráno. Mám dotaz ohledně MySQL InnoDB, rád bych udělal následující věc.

v jedné tabulce mám seznam uživatelů, ti mají svoje ID, které je primární klíč (>0) pak mám tabulku článků, kde mám relaci na user_id

rád bych ale měl relaci typu ON DELETE SET NULL , ON UPDATE CASCADE, to ale bohužel nejde:((( ON DELETE SET NULL nastavit nemohu, protože v user tabulce nemůže být user_id nula:(

Jak z toho ven?
Kajman_
Profil *
Null a nula je něco jiného. Pokud ve sloupečku s uživatelem opravdu nesmíte použít null hodnoty, tak si můžete např. vytvořit trigger, který před smazáním uživatele, nastaví všem jeho článkům, že patří například uživateli smazany.

Osobně bych ale spíše u uživatelů dával příznak, že už nejsou aktivní nebo povolení, než je mazat z db.
vojtah
Profil *
nebo vytvořit nějakého "dummy" usera, který se bude jmenovat např. "nikdo", bude mít ID např. -1 a ty tam napevno updatuješ tuto hodnotu.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0