sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo puedo establecer un número máximo de filas en la tabla MySQL?

Intente hacer una restricción para agregar un nuevo registro a una tabla. Genera un error cuando se va a agregar un nuevo registro.

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 ;

Tenga en cuenta que la operación COUNT puede ser lenta en tablas grandes de InnoDb.

En MySQL 5.5 puede usar SIGNAL // RENUNCIA declaración para generar un error.