为了在特定条件下(例如未来的生日)有效禁止 INSERT 操作,MySQL 触发器提供了一个强大的解决方案。 下面的示例说明了如何实现此目的:
<code class="language-sql">CREATE TRIGGER foo BEFORE INSERT ON table FOR EACH ROW BEGIN IF NEW.birthdate > CURRENT_DATE() THEN SIGNAL SQLSTATE '23000'; END IF; END;</code>
通过发出 SQLSTATE '23000' 信号,触发器会生成异常,导致 INSERT 操作失败。这种机制可以防止插入违反预定义条件的数据。
防止插入的替代方法:
<code></code>
以上是MySQL 触发器如何防止基于特定条件的 INSERT?的详细内容。更多信息请关注PHP中文网其他相关文章!