【发布时间】:2020-01-25 07:31:22
【问题描述】:
我是 postgresql 的新手。所以,我正在尝试创建一个函数,但我收到的错误消息是
错误:“IF”第 7 行或附近的语法错误:IF areaname = NULL OR pincode = NULL THEN
我推荐了这个link。
CREATE FUNCTION location."fn_updateInArea"(area_id integer, areaname text, pincode text)
RETURNS boolean
LANGUAGE 'sql'
AS $BODY$
BEGIN
IF areaname IS NULL OR pincode IS NULL THEN
RETURNING false;
ELSE
UPDATE location.areainfo SET
area_name=CASE WHEN (areaname) IS NULL THEN (SELECT area_name from location.areainfo WHERE id=area_id) ELSE area_name END,
pin_code=CASE WHEN (pincode) IS NULL THEN (SELECT pin_code from location.areainfo WHERE id=area_id) ELSE pin_code END
WHERE id=area_id AND "deleteIndex"=false;
RETURNING true;
END IF;
END;
$BODY$;
ALTER FUNCTION location."fn_updateInArea"(integer, text, text)
OWNER TO postgres;
我知道这是个愚蠢的错误,但请帮帮我。
【问题讨论】:
标签: postgresql if-statement plpgsql stored-functions