禁用数据库中的条目(针对特定的一组天)

时间:2014-06-10 11:48:12

标签: mysql jsp

我正在使用JSP和MYSQL处理应用程序。

该应用程序包含用户输入'日期'和'小时',存储在表格' epinfo'在MYSQL中。

        +-------+-------------+------+-----+------------+-------+
        | Field | Type        | Null | Key | Default    | Extra |
        +-------+-------------+------+-----+------------+-------+
        | uid   | varchar(10) | NO   | PRI |            |       |
        | dt    | date        | NO   | PRI | 0000-00-00 |       |
        | hrs   | int(2)      | YES  |     | NULL       |       |
        +-------+-------------+------+-----+------------+-------+

另一个功能是申请休假,存储在另一个表格中'离开'

     +--------+-------------+------+-----+------------+-------+
     | Field  | Type        | Null | Key | Default    | Extra |
     +--------+-------------+------+-----+------------+-------+
     | uid    | varchar(10) | NO   | PRI |            |       |
     | stdt   | date        | NO   | PRI | 0000-00-00 |       |
     | enddt  | date        | NO   | PRI | 0000-00-00 |       |
     +--------+-------------+------+-----+------------+-------+

我需要在表格epinfo中禁用和删除此时间段内的所有条目。

EG。如果请假申请表是2014-06-14至2014-06-16,我需要确保用户不能在表epinfo中输入6月14,15,16日的任何数据。

我知道BEFORE INSERT触发器可以在这里提供帮助,如下所示:

       create trigger cons_check
       before insert on epinfo
       for each row
       begin
       if exists(select * from leave where stdt<=entered_date and enddt>=entered_date)
       then
       Disable entry in database
       else
       insert into table.
       end if
       end

有人可以帮助我创建此触发器吗?或者帮助解决不同的问题? 此外,输入的日期是我在插入查询中的值。如何在触发器中使用此值?

0 个答案:

没有答案