sql >> Databáze >  >> RDS >> Mysql

Chyba MySQL:1395 Nelze odstranit ze zobrazení spojení

Dokumentace MySQL uvádí:

MySQL funguje tak, jak bylo navrženo, a brání vám v tom, abyste si střelili do nohy. Počet řádků, které by byly odstraněny z vašeho zobrazení, v podstatě neodpovídá počtu řádků, které by byly odstraněny z podkladových tabulek. Chcete také smazat fotografii, vzhled, osobu nebo fotografa? Nebo všechny? Nebo jen některé z nich? MySQL to také neví jistě, takže operaci neumožňuje.

S ohledem na to spusťte tento dotaz:

SELECT IS_UPDATABLE
FROM INFORMATION_SCHEMA.VIEWS
WHERE TABLE_NAME = 'v1';

Pokud je výsledek něco jiného než „ANO“, možná budete chtít zvážit přepracování svého pohledu. Druhou možností by bylo přímé odstranění z podkladových tabulek.

Je také vhodné vytvořit aktualizovatelný pohled pomocí klauzule „WITH CHECK OPTION“. To zabrání UPDATES nebo INSERTům do podkladových tabulek, s výjimkou těch, které splňují podmínky definované v klauzuli WHERE pohledu. Nebo ve vašem případě zabraňte Fredovi, aby si hrál s Bobovými fotkami.




  1. Způsobuje PDO::beginTransaction() zamykání tabulky nebo řádku, dokud PDO::commit()?

  2. pymysql výsledky fetchall() jako slovník?

  3. Funkce okna - Průběh celkem s resetem

  4. MySQL – Tato verze MySQL zatím nepodporuje poddotaz 'LIMIT &IN/ALL/ANY/SOME