1526: ER_NO_PARTITION_FOR_GIVEN_VALUE: Table has no partition for value (aucune partition de la table pour cette valeur)
MySQLQue signifie cette erreur ?
La valeur de la clé de partitionnement de la ligne insérée ne correspond à aucune partition définie. En partitionnement RANGE ou LIST, l'insertion échoue car aucune partition ne couvre la valeur reçue.
Cause
En partitionnement RANGE, insertion d'une valeur au-delà de la borne la plus haute sans partition MAXVALUE définie (par ex. une date future) ; en partitionnement LIST, arrivée d'une valeur non listée. Fréquent dans les tables partitionnées par période lorsque la partition de la nouvelle période n'est pas ajoutée à temps.
Comment la corriger
Ajoutez une partition qui couvre la valeur. Nouvelle partition haute pour RANGE : ALTER TABLE my_table ADD PARTITION (PARTITION p2026 VALUES LESS THAN (2027)); Pour une partition fourre-tout, définissez MAXVALUE pour RANGE et les valeurs concernées pour LIST. Pour les tables basées sur le temps, mettez en place un job de maintenance (event/scheduler) qui ajoute automatiquement les partitions.
Autres entrées pour ce moteur
- 1170ER_BLOB_KEY_WITHOUT_LENGTH: BLOB/TEXT column used in key specification without a key length (colonne BLOB/TEXT utilisée dans une clé sans longueur de clé)
- 1592ER_BINLOG_UNSAFE_STATEMENT: Unsafe statement written to the binary log (instruction non sûre écrite dans le binary log)
- 3140ER_INVALID_JSON_TEXT: Invalid JSON text (texte JSON invalide)
- 1049Unknown database 'name'
- 1364Field 'name' doesn't have a default value (le champ 'name' n'a pas de valeur par défaut)
- 1206The total number of locks exceeds the lock table size (le nombre total de verrous dépasse la taille de la table des verrous)
- 1236Got fatal error 1236 from master when reading data from binary log (erreur fatale 1236 reçue du master lors de la lecture du binary log)