为了账号安全,请及时绑定邮箱和手机立即绑定

测试的时候输入的全角字符串截取完的字符串中有乱码,请问是哪里出问题了?

测试的时候输入的全角字符串截取完的字符串中有乱码,请问是哪里出问题了?

30秒到达战场 2022-04-15 16:11:01
PC机编码:SJIS,数据库编码:UTF-8CREATE OR REPLACE FUNCTION SUBSTRB2(str in char, start_position in number, length_ in number)RETURN charISBEGINreturn convert(substrb(convert(str, 'JA16SJIS', 'AL32UTF8'), start_position, length_), 'AL32UTF8', 'JA16SJIS');END SUBSTRB2;/现在测试的时候输入的全角字符串截取完的字符串中有乱码。请问这个哪块出问题了?
查看完整描述

1 回答

?
偶然的你

TA贡献1841条经验 获得超3个赞

substr是按字符来计算,一个字母或汉字都按一个字符计算如:
substr('智能ABC',2,2)='能A'
如果想要按字节来计算则可以采用substrb函数,用法一样
substrb('智能ABC',3,4)='能AB'
当然还有另外几个按不同编码计算的函数
substrc:按Unicode编码,
substr2:按UCS2编码,
substr4:按UCS4编码。

查看完整回答
反对 回复 2022-04-19
  • 1 回答
  • 0 关注
  • 168 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信