为什么 Postgres 给我这个错误
[2014-10-30 13:43:36] [2201B] 错误:无效的正则表达式:无效的转义\序列其中:PL/pgSQL 函数 normalize_username() 分配时的第 5 行
当我使用 SQL 语句时:
UPDATE users."user" SET username = username
激活以下触发器:
CREATE OR REPLACE FUNCTION normalize_username()
RETURNS TRIGGER AS $normalize_username$
BEGIN
IF NOT (NEW.username IS NULL)
THEN
NEW.username := replace(NEW.username, 'ё', 'е');
END IF;
RETURN NEW;
END;
$normalize_username$ LANGUAGE plpgsql;
表是这样创建的:
CREATE TABLE USERS.user (
user_id SERIAL PRIMARY KEY,
username CITEXT,
)
replace() 是一个简单的文本函数,对吧?我想它不应该与正则表达式有任何关系。