我做错了什么?
我有table1
在INSERT数据到table1
时,我有触发器:
BEGIN
INSERT INTO table2 (`c_id`, `date`, `product_id`, `price`)
VALUES (
NEW.c_id,
NEW.date = CURRENT_TIMESTAMP,
NEW.product_id,
NEW.price
); END
CREATE TABLE `table2` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`c_id` int(11) NOT NULL,
`date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`product_id` int(11) NOT NULL,
`price` decimal(9,2) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `c_data` (`c_id`,`date`,`product_id`)
) ENGINE=MyISAM AUTO_INCREMENT=30 DEFAULT CHARSET=latin1;
结果,我得到了00:00:00的日期
MySQL版本5.6.28
答案 0 :(得分:0)
从插入查询中删除date
和NEW.date = CURRENT_TIMESTAMP
。默认情况下, mysql 会为其设置date
。
INSERT INTO table2 (`c_id`, `product_id`, `price`)
VALUES (
NEW.c_id,
NEW.product_id,
NEW.price
);