Saya mengusulkan pemicu. Ini adalah cara terbaik untuk memastikan bahwa pada setiap penyisipan, ukuran tabel maksimum diperhitungkan.
Kemungkinan duplikat dari Bagaimana cara menetapkan jumlah maksimum baris dalam tabel MySQL?
Dari jawaban yang diterima itu:
Cobalah untuk membuat batasan untuk menambahkan catatan baru ke tabel. Munculkan kesalahan saat catatan baru akan ditambahkan.
DELIMITER $$
CREATE TRIGGER trigger1
BEFORE INSERT
ON table1
FOR EACH ROW
BEGIN
SELECT COUNT(*) INTO @cnt FROM table1;
IF @cnt >= 25 THEN
CALL sth(); -- raise an error
END IF;
END
$$
DELIMITER ;
Perhatikan, bahwa operasi COUNT mungkin lambat pada tabel InnoDb besar.
Di MySQL 5.5 Anda dapat menggunakan pernyataan SIGNAL untuk memunculkan kesalahan.