MAKEUTF8
通过移除或替换非 UTF-8 字符,将字符串强制转换为 UTF-8。
MAKEUTF8 逐字节标记无效的 UTF-8 字符。例如,字节序列 0xE0 0x7F 0x80
为无效三字节 UTF-8 序列,但中间字节 0x7F
为有效单字节 UTF-8 字符。在本例中,0x7F
被保留,另外两个字节被移除或替换。
语法
MAKEUTF8( string‑expression [USING PARAMETERS param=value] );
参数
- string-expression
- 用于对非 UTF-8 字符进行求值的字符串表达式
参数
replacement_string
- 指定 MAKEUTF8 用于替换在 string-expression 中找到的每个非 UTF-8 字符的 VARCHAR(16) 字符串。如果省略此参数,则会移除非 UTF-8 字符。例如,以下 SQL 可指定将
name
列中的所有非 UTF 字符替换为字符串^
:
=> SELECT MAKEUTF8(name USING PARAMETERS replacement_string='^') FROM people;