[英]Add column in my sql , with values that are not allowed
如何添加列,不允许该列中的值示例...列年龄,不允许的值为1,2,3,6(允许其他值)我尝试使用检查约束,但mySql忽略了它。 ..
您能帮我解决这个问题还是至少给我发送有关该问题的材料。
非常感谢!
检查约束在MySql中不起作用。
备择方案:
在表上添加两个触发器:
查询示例:
CREATE TRIGGER checkage_bi BEFORE INSERT ON mytable FOR EACH ROW
-> BEGIN
-> DECLARE dummy,baddata INT;
-> SET baddata = 0;
-> IF NEW.color = 'white' or NEW.color = 'black' or NEW.color = 'red' THEN
-> SET baddata = 1;
-> END IF;
-> IF baddata = 1 THEN
-> SELECT CONCAT('Cannot Insert This Because Color ',NEW.color,' is Invalid')
-> INTO dummy FROM information_schema.tables;
-> END IF;
-> END; $$
您也可以类似地创建Before Update
触发器。
欲了解更多信息, 请点击这里
希望能帮助到你!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.