Mysql
 sql >> Database >  >> RDS >> Mysql

Come posso impostare un numero massimo di righe nella tabella MySQL?

Prova a limitare l'aggiunta di un nuovo record a una tabella. Genera un errore quando verrà aggiunto un nuovo record.

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 ;

Nota che l'operazione COUNT potrebbe essere lenta su grandi tabelle InnoDb.

Su MySQL 5.5 puoi usare SIGNAL // DIMISSIONI dichiarazione per generare un errore.