我很难尝试触发。
我可以找到很多示例来说明如何进行触发,但是没有什么可以帮助解决我的特定问题。
我需要在考试项目中创建触发器,并希望它接受输入的电子邮件并将其转换为小写字母。应该很简单-但是我做不到。
所以现在我在寻求帮助。
这是我从sql程序中获得的信息,仅插入正确的值应该很容易。
DELIMITER $$
CREATE
/*[DEFINER = { user | CURRENT_USER }]*/
TRIGGER `awesomegame`.`lowercase` AFTER INSERT
ON `awesomegame`.`users`
FOR EACH ROW BEGIN
UPDATE LOWER(sEmail);
END$$ DELIMITER ;
我该怎么办?
最佳答案
使用BEFORE INSERT
代替AFTER INSERT
,并使用new关键字访问和修改sEmail
字段。
CREATE TRIGGER `awesomegame`.`lowercase` BEFORE INSERT ON `awesomegame`.`users` FOR EACH ROW
SET NEW.sEmail = LOWER(NEW.sEmail);
您可以(应该?)对
BEFORE UPDATE
做同样的事情。