Ik stel triggers voor. Dit is de beste manier om ervoor te zorgen dat bij elke inzet rekening wordt gehouden met de maximale tafelgrootte.
Mogelijk duplicaat van Hoe kan ik een maximum aantal rijen instellen in de MySQL-tabel?
Van dat geaccepteerde antwoord:
Probeer een beperking te maken voor het toevoegen van een nieuw record aan een tabel. Geef een foutmelding wanneer er een nieuw record wordt toegevoegd.
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 ;
Houd er rekening mee dat de COUNT-bewerking traag kan zijn op grote InnoDb-tafels.
Op MySQL 5.5 kunt u de SIGNAL-instructie gebruiken om een fout op te heffen.