关于页面输入框的字段限长问题,查询数据库字符集

关于页面输入框的字段限长

如果开发文档或者接口文档没有明确给出字段的限制长度,我们在写页面的时候需要自己去数据库查看字段长度

以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......

posted @ 2022-11-28 16:09  苏槿年  阅读(147)  评论(0编辑  收藏  举报