0
我试图为每个博客条目自动生成摘要如果摘要不存在。 所以,我编写此触发器:TRIGGER和IF IS NULL
DELIMITER |
CREATE TRIGGER trigger_summary
BEFORE INSERT ON Blog
FOR EACH ROW
BEGIN
IF @summary IS NULL THEN
SET @summary=LPAD(@content, 149, '…');
END IF;
END|
触发正确创建。 但是,当我插入一个没有摘要的新条目时......什么都没有发生。 我不明白为什么,因为汇总值为空。 一个插件的例子,我做:
INSERT INTO Blog(title,summary,content,author) VALUES('Test', NULL, 'Lorem ipsum dolor sit amet, consectetur adipiscing elit……', 2);
我插入«空»。为什么我的TRIGGER不工作?
如果万一,这里是我的表结构:
CREATE TABLE `Blog` (
`id` int(10) UNSIGNED NOT NULL,
`title` varchar(200) NOT NULL DEFAULT '',
`summary` text,
`content` text NOT NULL,
`author` int(10) UNSIGNED NOT NULL DEFAULT '0',
`date` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
我要的很简单: 当makink一个INSERT: IF总结为空的话,采取的第一个149字符的«内容»并将其用作摘要。 就是这样...
但是......为什么......它不工作?
非常感谢您的帮助!