你好,我要解开一个触发器中一个月,但我得到一个语法错误附近新有另一种方式从FDATE得到触发日期部分
SELECT EXTRACT(MONTH FROM TIMESTAMP new.fdate) into month_extr;
你好,我要解开一个触发器中一个月,但我得到一个语法错误附近新有另一种方式从FDATE得到触发日期部分
SELECT EXTRACT(MONTH FROM TIMESTAMP new.fdate) into month_extr;
尝试使用date_part(text, timestamp)
代替:
SELECT date_part('month', NEW.fdate) INTO month_extr;
是的,这就解决了问题谢谢 –
您是否尝试过新的内部月份。 fdate而不是lowercased? SQL不区分大小写,但就我所知的plpgsql过程而言,这可能很重要。 另一条线索 - NEW和OLD变量仅在行上下文中可用(所以触发器必须为“每行”而不是语句执行)。
它是为每一行,我把它改为大写,但问题仍然相同 –
我会写:
SELECT INTO month_extr date_part('month', NEW.fdate);
不知道如果你的版本也是有效的。
请显示'create trigger'命令的确切文本和完整的错误信息。 – wallyk