我用的是sun.jdbc.odbc.JdbcOdbcDriver驱动,
String sqlstr = "INSERT INTO mp_report_volume (ipcc_code, volume_name,"+
"start_date, end_date, mpflow_code) VALUES ('"+pContractNumber+"', ?, ?, ?, ?)"; con.setAutoCommit(false);//关闭自动提交
pre = con.prepareStatement(sqlstr);//声明执行
//设置参数
pre.setString(1,hashtable.get(KEYDefine.VOLUME_NAME).toString());
pre.setDate(2,Date.valueOf(hashtable.get(KEYDefine.START_DATE).toString()));
pre.setDate(3,Date.valueOf(hashtable.get(KEYDefine.END_DATE).toString()));
pre.setString(4,hashtable.get(KEYDefine.FLOW_NUMBER).toString());
pre.executeUpdate();
由于字段ipcc_code 内容比较多,我把它的数据类型由文本 250改为备注类型。但是保存的内容还是做了截取。
如 当ipcc_code对应的参数pContractNumber内容为:500个字符的内容(01CDEFGHIJ02CDEFGHIJ03CDEFGHIJ04CDEFGHIJ05CDEFGHIJ06CDEFGHIJ
07CDEFGHIJ08CDEFGHIJ09CDEFGHIJ10CDEFGHIJ11CDEFGHIJ12CDEFGHIJ13CDEFGHIJ14CDEFGHIJ15CDEFGHIJ16CDEFGHIJ
17CDEFGHIJ18CDEFGHIJ19CDEFGHIJ20CDEFGHIJ21CDEFGHIJ22CDEFGHIJ23CDEFGHIJ24CDEFGHIJ25CDEFGHIJ26CDEFGHIJ
27CDEFGHIJ28CDEFGHIJ29CDEFGHIJ30CDEFGHIJ31CDEFGHIJ32CDEFGHIJ33CDEFGHIJ34CDEFGHIJ35CDEFGHIJ36CDEFGHIJ
37CDEFGHIJ38CDEFGHIJ39CDEFGHIJ40CDEFGHIJ41CDEFGHIJ42CDEFGHIJ43CDEFGHIJ44CDEFGHIJ45CDEFGHIJ46CDEFGHIJ
47CDEFGHIJ48CDEFGHIJ49CDEFGHIJ50CDEFGHIJ)
执行完这段sql后存到数据库却为352个字符
01CDEFGHIJ02CDEFGHIJ03CDEFGHIJ04CDEFGHIJ05CDEFGHIJ06CDEFGHIJ07CDEFGHIJ08CDEFGHIJ
09CDEFGHIJ10CDEFGHIJ11CDEFGHIJ12CDEFGHIJ13CDEFGHIJ14CDEFGHIJ15CDEFGHIJ16CDEFGHIJ17CDEFGHIJ18CDEFGHIJ19CDEFGHIJ
20CDEFGHIJ21CDEFGHIJ22CDEFGHIJ23CDEFGHIJ24CDEFGHIJ25CDEFGHIJ26CDEFGHIJ27CDEFGHIJ28CDEFGHIJ29CDEFGHIJ30CDEFGHIJ
31CDEFGHIJ32CDEFGHIJ33CDEFGHIJ34CDEFGHIJ35CDEFGHIJ36
,后面的148个字符全部截取掉了。当pContractNumber为391个字符时,数据库只保存了348个字符。
不知道为什么?请您不吝赐教
String sqlstr = "INSERT INTO mp_report_volume (ipcc_code, volume_name,"+
"start_date, end_date, mpflow_code) VALUES ('"+pContractNumber+"', ?, ?, ?, ?)"; con.setAutoCommit(false);//关闭自动提交
pre = con.prepareStatement(sqlstr);//声明执行
//设置参数
pre.setString(1,hashtable.get(KEYDefine.VOLUME_NAME).toString());
pre.setDate(2,Date.valueOf(hashtable.get(KEYDefine.START_DATE).toString()));
pre.setDate(3,Date.valueOf(hashtable.get(KEYDefine.END_DATE).toString()));
pre.setString(4,hashtable.get(KEYDefine.FLOW_NUMBER).toString());
pre.executeUpdate();
由于字段ipcc_code 内容比较多,我把它的数据类型由文本 250改为备注类型。但是保存的内容还是做了截取。
如 当ipcc_code对应的参数pContractNumber内容为:500个字符的内容(01CDEFGHIJ02CDEFGHIJ03CDEFGHIJ04CDEFGHIJ05CDEFGHIJ06CDEFGHIJ
07CDEFGHIJ08CDEFGHIJ09CDEFGHIJ10CDEFGHIJ11CDEFGHIJ12CDEFGHIJ13CDEFGHIJ14CDEFGHIJ15CDEFGHIJ16CDEFGHIJ
17CDEFGHIJ18CDEFGHIJ19CDEFGHIJ20CDEFGHIJ21CDEFGHIJ22CDEFGHIJ23CDEFGHIJ24CDEFGHIJ25CDEFGHIJ26CDEFGHIJ
27CDEFGHIJ28CDEFGHIJ29CDEFGHIJ30CDEFGHIJ31CDEFGHIJ32CDEFGHIJ33CDEFGHIJ34CDEFGHIJ35CDEFGHIJ36CDEFGHIJ
37CDEFGHIJ38CDEFGHIJ39CDEFGHIJ40CDEFGHIJ41CDEFGHIJ42CDEFGHIJ43CDEFGHIJ44CDEFGHIJ45CDEFGHIJ46CDEFGHIJ
47CDEFGHIJ48CDEFGHIJ49CDEFGHIJ50CDEFGHIJ)
执行完这段sql后存到数据库却为352个字符
01CDEFGHIJ02CDEFGHIJ03CDEFGHIJ04CDEFGHIJ05CDEFGHIJ06CDEFGHIJ07CDEFGHIJ08CDEFGHIJ
09CDEFGHIJ10CDEFGHIJ11CDEFGHIJ12CDEFGHIJ13CDEFGHIJ14CDEFGHIJ15CDEFGHIJ16CDEFGHIJ17CDEFGHIJ18CDEFGHIJ19CDEFGHIJ
20CDEFGHIJ21CDEFGHIJ22CDEFGHIJ23CDEFGHIJ24CDEFGHIJ25CDEFGHIJ26CDEFGHIJ27CDEFGHIJ28CDEFGHIJ29CDEFGHIJ30CDEFGHIJ
31CDEFGHIJ32CDEFGHIJ33CDEFGHIJ34CDEFGHIJ35CDEFGHIJ36
,后面的148个字符全部截取掉了。当pContractNumber为391个字符时,数据库只保存了348个字符。
不知道为什么?请您不吝赐教
解决方案 »
- 关于打字游戏的问题
- 我的FileWriter老是抹去上一次存的数据,怎么办?急
- String s=new String("abc")产生了几个对象?
- for循环优化?
- Java中传参和传值的区别
- 考考你的java基础,认为java基础不错的进来看看。
- 为什么struts和spring集成是为什么在spring的配置文件中一加配置hibernate的的sessionfactory就找不到action啊一去掉就能找到action?
- 字符串中取出一段符号之间的所有子字符串??
- 初学者弱弱的问
- 一个java 考试题,大家帮忙了
- 问一个有关IDE的问题,希望了解的人进来讨论讨论,来的都有分
- 如何通过jdbc访问大于65535的端口?
因为text类型存储数据的上限达到G的级别