09云 2021-06-15 23:05 采纳率: 0%
浏览 10

新手求问mysql,想写一个触发器,

CREATE DEFINER=`root`@`localhost` TRIGGER `application_BEFORE_INSERT` BEFORE INSERT ON `application` FOR EACH ROW BEGIN
if(new.date<2021-09-05)
then update application
set isbn=new.isbn,student_id=new.student_id,quantity=new.quantity,
date=new.date;
else signal sqlstate '42S22' set message_text='not on time';
end if;
END

判断输入的时间在截止日期之前,但是写了下面代码之后不管输入什么时间都显示“not on time”,或者希望大佬们帮忙改一改,能够直接生成当前日期,判断当前日期是否在截止时间范围内?

  • 写回答

2条回答 默认 最新

  • 关注

    if(new.date<2021-09-05)

    改为

    if(new.date<unix_timestamp('2021-09-05'))

    试试。

    评论

报告相同问题?

悬赏问题

  • ¥15 sqlite加密问题咨询
  • ¥15 appdesigner接收不到udp组播的数据
  • ¥15 谁能解一下这个,限时1个半小时内有酬金
  • ¥15 verilog 非阻塞赋值下的移位拼接错误
  • ¥100 两个按钮控制一个LED
  • ¥15 用C语言写离散数学相关问题
  • ¥30 如何用python的GephiStreamer连接到gephi中,把Python和Gephi的具体操作过程都展示,重点回答Gephi软件的调试,以及如果代码的端口在浏览器中无法显示怎么处理
  • ¥15 ansys机翼建模肋参数
  • ¥15 Sumo软件无法运行
  • ¥15 如何在vscode里搭建stata的编辑环境?