我正在使用Mysql并尝试在表上创建一个触发器,以防止删除或更新特定记录,例如我有一个表demo
id username password
1 dames t312llok
2 sauce 12ff1fff1
3 hynes 5656166oo9
我想阻止记录:
id username password
1 dames t312llok
通过使用触发器删除或更新
答案 0 :(得分:0)
如果您使用的是MySQL 5.5或更高版本,这很简单。
DELIMITER $$
DROP TRIGGER IF EXISTS demo_bu $$
CREATE TRIGGER demo_bu BEFORE UPDATE ON demo FOR EACH ROW
BEGIN
IF OLD.id = 1 THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'This magical user cannot be updated';
END IF;
END $$
DELIMITER ;
对于更新,它是完全相同的代码,只需稍作调整。
SELECT Content
FROM yourtable
WHERE Syndication_type = 1 -- your conditions
GROUP BY Content, Syndication_type
HAVING COUNT(DISTINCT Syndication_publication) = 1
另外......不要在数据库中存储密码。