DBAtlas · Veritabanı operasyon atlası

1526: ER_NO_PARTITION_FOR_GIVEN_VALUE: Table has no partition for value

MySQL

Ne demek?

Eklemeye çalıştığınız satırın bölümleme (partition) anahtarı değeri, tanımlı hiçbir bölüme uymuyor. RANGE veya LIST bölümlemede, gelen değeri kapsayan bir bölüm bulunmadığı için ekleme başarısız olur.

Neden olur?

RANGE bölümlemede en üst sınırın ötesinde bir değer eklemek ve MAXVALUE bölümünün tanımlı olmaması (ör. gelecekteki bir tarih); LIST bölümlemede listelenmemiş bir değerin gelmesi. Zamana göre bölümlenmiş tablolarda yeni dönem bölümü zamanında eklenmediğinde sık yaşanır.

Nasıl çözülür?

Değeri kapsayan bir bölüm ekleyin. RANGE için yeni üst bölüm: ALTER TABLE tablo ADD PARTITION (PARTITION p2026 VALUES LESS THAN (2027)); Genel bir yakalama bölümü için RANGE'de MAXVALUE, LIST'te ilgili değerleri tanımlayın. Zaman bazlı tablolarda bölümleri otomatik ekleyen bir bakım işi (event/scheduler) kurun.

DBAtlas'ta aç →

Aynı motorda diğer kayıtlar