sql >> Databasteknik >  >> RDS >> Mysql

Hur kan jag ställa in ett maximalt antal rader i MySQL-tabellen?

Försök att göra en begränsning för att lägga till en ny post i en tabell. Skapa ett felmeddelande när en ny post ska läggas till.

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 ;

Observera att COUNT operation kan vara långsam på stora InnoDb-tabeller.

På MySQL 5.5 kan du använda SIGNAL // RESIGNAL uttalande för att skapa ett fel.



  1. Hur SUBSTR()-funktionen fungerar i MySQL

  2. Villkorlig lead/lag-funktion PostgreSQL?

  3. Hur RPAD() fungerar i MariaDB

  4. Introduktion till registerunderhåll