Oracle裡漢字長度問題

2021-04-26 13:23:17 字數 761 閱讀 9481

以前在做乙個系統時,遇到了乙個問題!今天無意之中找到了這個問題的解決方法,貼出來!!!

問題描述:

varchar2(4000) abc;

intert into table_name(abc) values('這裡有1500個漢字……');

報錯:插入字元過長!經過測試,發現乙個漢字佔3個位元組,所以報錯!!!

問題所在:

使用的字符集是utf8,就有可能出現這個錯誤!

使用命令檢視:

sql> select * from v$nls_parameters where parameter='nls_characterset';

parameter

value

nls_characterset

al32utf8

解決方法:

建議使用zhs16gbk字符集!

操作:sql> shutdown immediate;

sql> startup mount;

sql> alter system enable restricted session;

sql> alter system set job_queue_processes=0;

sql> alter database open;

sql> alter database character set al32utf8/zhs16gbk;

sql> shutdown immediate;

sql> startup;

問題解決!

input標籤的漢字長度限制

關於下面提到的string.prototype.chinesesubstr方法,請參見 給string擴充套件乙個len方法,用於獲取包含非ascii碼字元的常規長度 非ascii碼算2個字元 string.prototype.len function 下面是用jquery做的對input做長度限制...

input標籤的漢字長度限制

關於下面提到的string.prototype.chinesesubstr方法,請參見 給string擴充套件乙個len方法,用於獲取包含非ascii碼字元的常規長度 非ascii碼算2個字元 string.prototype.len function 下面是用jquery做的對input做長度限制...

php擷取漢字長度自定義函式

function msubstr str,start,len else tmpstr.substr str,i,1 return tmpstr str 這個字元好長呀,short str showshort str,4 擷取前面4個漢字,結果為 這個字元.echo short str functio...