bonjour,
localement j'ai une simple requête UPDATE sur une vue VIEW assez simple qui fonctionne alors que sur le serveur de prod, elle bloque avec le message :
d'où peut venir le problème ?The target table XXX of the UPDATE is not updatable (1288)
config mysql ou version de mysql ?
En local de dev, j'ai cette version :
et en prod mutualisé j'ai cette version :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 in_predicate_conversion_threshold 1000 innodb_version 10.4.8 protocol_version 10 slave_type_conversions system_versioning_alter_history ERROR system_versioning_asof DEFAULT tls_version TLSv1.1,TLSv1.2,TLSv1.3 version 10.4.8-MariaDB version_comment mariadb.org binary distribution version_compile_machine x64 version_compile_os Win64 version_malloc_library system version_source_revision 4c2464b87d58a43d1292e166bae6720b51f4b000 version_ssl_library WolfSSL 4.1.0
Ma requête de création de vue est assez simple (sans calucl de math) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 innodb_version 5.7.32 protocol_version 10 slave_type_conversions tls_version TLSv1,TLSv1.1,TLSv1.2 version 5.7.32-log version_comment MySQL Community Server (GPL) version_compile_machine x86_64 version_compile_os linux-glibc2.12
Du coup, une simple update d'un champs string ne devrait pas poser pas de souci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 CREATE OR REPLACE VIEW edt_cahier_pointages AS SELECT point_id, point_visible, point_date_crea, point_date_mod, point_user_crea, point_user_mod, point_edt_id, point_type_id, point_com_prof, point_etu_id, etu_photo FROM pointages LEFT JOIN etudiants ON point_etu_id=etu_id WHERE point_visible=1 ;
et pourtant en prod j'ai l'erreur 1288
Code : Sélectionner tout - Visualiser dans une fenêtre à part update edt_cahier_pointages set point_com_prof='test' where point_id=12
D'où cela peut bien provenir ?The target table edt_cahier_pointages of the UPDATE is not updatable
Partager