如何限制mysql表中可以存储的行数?

Shu*_*hit -2 mysql

我需要将 MySQL 表中可插入的行数限制为 10。我只需要从 MySQL 实现这个,即不使用任何编程语言。

我创建了一个实施表MAX_ROWS = 10,但它不起作用。

请检查这些屏幕截图。

检查此屏幕截图以了解 Alter Table MAX_ROWS = 10

表属性

我很困惑如何做到这一点。如果有人能为我提供解决方案,那对我来说真的很有帮助。

谢谢。

Mit*_*hta 5

我认为 MySQL 没有提供这样的内置功能。一种解决方案是您可以创建触发器。

CREATE TRIGGER your_trigger_name
BEFORE INSERT ON your_table_name
FOR EACH ROW
BEGIN
    DECLARE cnt INT;

    SELECT count(*) INTO cnt FROM your_table_name;

    IF cnt = 10 THEN
        SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'You can store only 10 records.';
    END IF;
END;
Run Code Online (Sandbox Code Playgroud)

在你的桌子上尝试上面的触发器。将您的 table_name 替换为your_table_name

希望对你有帮助。