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;