Autor | Zpráva | ||
---|---|---|---|
janbarasek Profil |
Ahoj,
mám tabulku dotazů na webovém fóru, její kompletní struktura není v rámci tohoto dotazu podstatná. Nicméně obsahuje tyto důležité sloupce: ID | + auto increment user | cizí klíč na tabulku "users" na sloupec "ID" (obsahuje ID uživatele, který se ptá) last_answer | cizí klíč také na tabulku "users" na sloupec "ID" (obsahuje ID uživatele, který naposledy odpověděl) Problém je, že při ukládání nového dotazu dostávám tuto chybu: Cannot add or update a child row: a foreign key constraint fails...
Rozumím tomu tak, že potřebuje pro sloupec last_answer striktně definovat ID uživatele z tabulky "users".
OK, ale co když takový uživatel (zatím) neexistuje a bude přidán časem? Napadlo mě, že bych to mohl udělat bez relace, ale to se mi nezdá jako vhodné řešení, protože používám Nette Database, která relace ke své správné činnosti vyžaduje. Také bych mohl možná založit nějakého univerzálního uživatele s ID = 0 a používat jej pro "neexistující odpověď", ale to je asi prasárna, že? Co myslíte? Děkuji za všechny nápady. |
||
Kajman Profil |
#2 · Zasláno: 5. 5. 2016, 19:06:34
Pokud uživatel neexistuje, použijte null hodnotu.
|
||
janbarasek Profil |
#3 · Zasláno: 5. 5. 2016, 19:15:11
Kajman:
Díky moc, to funguje. Celou dobu jsem se tam snažil dostat číslo 0, které to nechtělo vzít. |
||
Časová prodleva: 9 let
|
0