运行Postgres函数时出现额外字符'Â',求解决方法
解决Postgres函数定义中出现额外字符'Â'的问题
问题根源在于函数名里的°符号:这个Unicode度数符号(U+00B0)在编码不匹配的场景下,会被错误解析为°,从而产生多余的Â字符。以下是具体解决方法:
- 替换特殊标识符:将函数名中的
°替换为Postgres合法的标识符字符(如下划线_),Postgres合法标识符仅允许字母、数字和下划线。修正后的函数名为id_generator_generateid。 - 确保文件编码为UTF-8:用文本编辑器打开SQL文件,将编码设置为UTF-8后保存,避免编码转换引发的字符解析错误。
修正后的完整函数代码:
CREATE FUNCTION id_generator_generateid() RETURNS SETOF integer AS $BODY$ BEGIN RETURN QUERY SELECT max(ua_id) FROM user_attribute; RETURN; END; $BODY$ LANGUAGE plpgsql;
重新执行上述SQL代码,即可消除额外的Â字符。
内容的提问来源于stack exchange,提问作者jojo
相关产品推荐
相关产品推荐

