关于页面输入框的字段限长问题,查询数据库字符集
关于页面输入框的字段限长
如果开发文档或者接口文档没有明确给出字段的限制长度,我们在写页面的时候需要自己去数据库查看字段长度
以Oracle数据库为例
如果Oracle的字符集是UTF-8,一个汉字是3个字节的, varchar(4000)最多存1333个汉字,而varchar2(4000)其实和varchar2(1333 char)一样的,最多能存1333个汉字
如果Oracle的字符集是GBK,一个汉字是2个字节的,varchar2(4000)最多可以存2000个汉字,而varchar2(4000)其实和varchar2(2000 char)一样,最多只能存2000个汉字;
varchar2(4000)这个是4000byte
varchar2(4000 char)这个存储的时候不是以byte来衡量的,而是以文字数来计算的
查看Oracle数据库字符集
SELECT * FROM V$NLS_PARAMETERS
SELECT * FROM Nls_Database_Parameters --服务器端
SELECT Userenv('language') FROM dual --客户端
这里就是UTF-8字符集
常见的字符集有 ASCII、GB2312、GBK、UTF-8......