将当前日期时间插入mysql表,导致错误

将当前日期时间插入mysql表,导致错误,mysql,Mysql,我正在创建一个名为AccLikesVid的过程,将其插入名为a_likes_v()的表中: 但当我执行上述代码时,MySQL Workbench生成一个错误:错误代码1193。未知系统变量“now” 您能告诉我我的代码有什么问题吗?您应该使用: DELIMITER $$ CREATE PROCEDURE AccLikesVid(username VARCHAR(30), vidid INT(11), v_type BOOL) BEGIN IF (v_type = 1) THEN --

我正在创建一个名为
AccLikesVid
的过程,将其插入名为
a_likes_v
()的表中:

但当我执行上述代码时,MySQL Workbench生成一个错误:错误代码1193。未知系统变量“now”
您能告诉我我的代码有什么问题吗?

您应该使用:

DELIMITER $$
CREATE PROCEDURE AccLikesVid(username VARCHAR(30), vidid INT(11), v_type BOOL)
BEGIN
    IF (v_type = 1) THEN  -- TYPE is keyword, avoid such identifiers
        INSERT INTO a_likes_v(account_name, video_id, dtime, liked) 
        VALUES (username, vidid, NOW(), 1);  -- avoid blind insert
    END IF;   -- END IF not ENDIF
END$$

@NTNImperial
DELIMITER $$
CREATE PROCEDURE AccLikesVid(username VARCHAR(30), vidid INT(11), v_type BOOL)
BEGIN
    IF (v_type = 1) THEN  -- TYPE is keyword, avoid such identifiers
        INSERT INTO a_likes_v(account_name, video_id, dtime, liked) 
        VALUES (username, vidid, NOW(), 1);  -- avoid blind insert
    END IF;   -- END IF not ENDIF
END$$