MySQL触发+比较2个日期

时间:2012-05-02 18:45:56

标签: mysql database triggers

我对一些MySQL触发器语法有疑问我在触发器中使用DATE时遇到了一些新问题,并且在此代码中出现错误

/*  rentalTotal
Description:  Trigger that keeps track of the rental income
*/
DROP TRIGGER IF EXISTS rentTotal;
DELIMITER //
CREATE TRIGGER rentTotal AFTER INSERT ON rental_contract FOR EACH ROW
BEGIN

/*determine the cost of the rental*/
declare cost INT;
SET cost = (SELECT daily_rent FROM rental_car WHERE NEW.rental_car_id = id) * NEW.duration;



/*check to make sure that the start date for the rental is in the current month/year*/

/* we need to delete table contents and start fresh */ ERROR OCCURS HERE 
IF(MONTH(SELECT current_month_year from rental_income limit 1)) != MONTH(CURDATE()) THEN
  TRUNCATE TABLE rental_income;
END IF;

/* either way insert cost and current date */
INSERT INTO rental_income values(cost, CURDATE());

END;//
DELIMITER //

我基本上想要比较2个月,第一个是对表的查询结果是DATE对象而第二个是从函数CURDATE()生成的,有人可以告诉我哪里出错了

0 个答案:

没有答案