限制整数数据类型字段长度

Luk*_*uke 5 mysql sql database database-design

我试图限制整数字段可以包含的数字的数量.例如,我希望字段包含不超过5长的数字,因此99999将是最高有效条目.

这可以在MySQL中做到吗?我查看了文档,但没有找到答案.

jue*_*n d 3

不幸的是,CHECK约束和用户定义类型都没有在 MySQL 中实现。也许这会在未来的版本中改变。

在此之前,您可以使用触发器来纠正输入(如果这是适合您的方法):

delimiter //
CREATE TRIGGER trigger_check BEFORE INSERT ON your_table
FOR EACH ROW 
BEGIN 
    IF NEW.NUM > 99999 THEN 
        SET NEW.NUM = 0; 
    END IF; 
END
//
Run Code Online (Sandbox Code Playgroud)