oracle varchar2存汉字出现问题
来源:互联网 发布:c语言教材推荐 编辑:程序博客网 时间:2024/05/16 18:09
一、场景:
页面的remark备注字段在数据库中的长度为varchar2(4000),jsp页面校验长度的方式为:
var valFlag = editForm.validate({
strucName:{name:'措施名称',notEmpty:true,trim:true,maxLength:256},
strategyName:{name:'策略',notEmpty:true,trim:true},
remark:{name:'措施说明',trim:true,maxLength:4000}
});
这样就会出现一个问题,字段的长度在js这边校验通过了,于是就到了保存到数据库这一步了,结果出现了如下错误:
二、原因及解决方法:
数据库中的字段类型为varchar2(4000),js那边的editForm.validate校验的是字符的长度,而varchar2的4000代表的是字节长度,一个汉字有可能占用2或3个字节,所以会报错,为了避免oracle数据库编码改变导致出现占用3个字节的情况,这里统一除以3来作为校验的长度:
var valFlag = editForm.validate({
strucName:{name:'措施名称',notEmpty:true,trim:true,maxLength:85},
strategyName:{name:'策略',notEmpty:true,trim:true},
remark:{name:'措施说明',trim:true,maxLength:1333}
});
0 0
- oracle varchar2存汉字出现问题
- Oracle中varchar2(4000)最多能存多少个汉字?
- Oracle定义varchar2()类型存储汉字的长度问题
- Oracle定义varchar2()类型存储汉字的长度问题
- oracle中的varchar2存放汉字的问题总结
- oracle中的varchar2存放汉字的问题总结
- Oracle定义varchar2()类型存储汉字的长度问题
- Oracle定义varchar2()类型存储汉字的长度问题
- Oracle定义varchar2()类型存储汉字的长度问题
- 字符集合决定varchar2的长度--Oracle定义varchar2()类型存储汉字的长度问题
- Oracle数据库的varchar2(2)存储一个汉字时提示插入汉字过长问题
- Oracle数据库的varchar2(2)存储一个汉字时提示插入汉字过长问题
- oracle的varchar2(4000)通过jdbc的thin驱动连接为什么只可以存666个汉字 .
- Oracle的varchar2(4000)插入汉字过长
- Oracle的varchar2(4000)插入汉字过长
- 请问VARCHAR2(128)能存多少个汉字?
- ORACLE varchar2 长度问题整体
- ORACLE VARCHAR2最大长度问题
- 史上最全的Java集合类解析
- RAC 知识点(二)
- Android 蓝牙技术 实现终端间数据传输
- ThinkPHP 转存word.doc保存图片
- 数据仓库的模型设计
- oracle varchar2存汉字出现问题
- webapi使用System.Web.Http.Cors配置跨域
- iOS断点调试请求数据都为nil
- spark-streaming学习笔记总结
- 12306余票查询(爬虫)
- 蓝桥之序列求和
- java HTTP
- oracle 权限问题
- 典型非对称加密算法RSA(Java)