Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Błąd MySQL:1395 Nie można usunąć z widoku dołączania

Dokumentacja MySQL stwierdza:

MySQL działa zgodnie z założeniami i nie pozwala Ci strzelić sobie w stopę. Zasadniczo liczba wierszy, które zostałyby usunięte z widoku, nie odpowiada liczbie wierszy, które zostałyby usunięte z tabel bazowych. Ponadto, czy chcesz usunąć zdjęcie, wygląd, osobę lub fotografa? Czy wszystkie? A może tylko niektóre z nich? MySQL też nie wie tego na pewno, więc nie pozwala na operację.

Mając to na uwadze, uruchom to zapytanie:

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

Jeśli wynik jest inny niż „TAK”, możesz rozważyć przeprojektowanie widoku. Inną opcją byłoby usunięcie bezpośrednio z tabel bazowych.

Dobrym pomysłem jest również utworzenie aktualizowalnego widoku za pomocą klauzuli "With CHECK OPTION". Zapobiega to UPDATE lub INSERT do tabel bazowych, z wyjątkiem tych, które spełniają warunki zdefiniowane w klauzuli WHERE widoku. Lub, w twoim przypadku, nie pozwól Fredowi bawić się zdjęciami Boba.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Korzystanie ze stref czasowych w aplikacji internetowej PHP

  2. Import 1GO SQL File => ERROR 2013 (HY000) w wierszu 23:Utracono połączenie z serwerem MySQL podczas zapytania

  3. MYSQL Wybierz MAX Date w oświadczeniu dołączenia

  4. Blokowanie stołu za pomocą hibernacji

  5. MySQL:Usuń wszystkie wiersze starsze niż 10 minut