Saltar al contenido

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

Entiende el código de forma correcta previamente a adaptarlo a tu proyecto si tdeseas aportar algo puedes dejarlo en la sección de comentarios.

Solución:

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 la instrucción SIGNAL // RESIGNAL para generar un error.

  • Cree una tabla con 100.000 filas.
  • Rellene previamente uno de los campos con una “marca de tiempo” en el pasado.
  • Seleccione el registro más antiguo, actualice la “marca de tiempo” al “crear” (actualizar) el registro.
  • Solo use seleccionar y actualizar, nunca use insertar o eliminar.
  • El índice inverso en el campo “marca de tiempo” hace que la selección/actualización sea rápida.

No hay forma de limitar el número máximo de filas de una tabla en MySQL, a menos que escriba un disparador para hacerlo.

Recuerda que te brindamos la opción de añadir una tasación justa .

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *