要插入的字符串没问题。三个字符。
要插入的字段是vchar 类型的,10个字符。
但插入后就变成三个字符加上七个空格。不够十个会自动补齐。
用statement拼语句就没有问题。
加空格也没用。
我用的netbean 5.5
代码:
PreparedStatement pstmt = con.prepareStatement("insert into Member( MemberName , MemberPassword , MemberDetail ) values( ? , ? , ? ) " );
pstmt.setString(1,name);
pstmt.setString(2,password);
pstmt.setString(3,detail);
pstmt.executeUpdate();
问题补充:谢谢一楼,肯定不是源数据有空格。我用
pstmt.setString(1,"Hello");
这样也不行。
解决方案 »
- Hibernate框架中,log4j异常问题。求各位大神帮帮忙!
- JAVA生成一维码图片!
- 一个始终让我心中不平静的问题
- 关于文件流的读写
- 网站做的真垃圾
- hasMap 和 hasTable 与 Collection 和ArrayList 它们的区别在哪里
- 解题||指点||提供资料==绝对有高分!(100%承诺能帮解决重点者200分以上)
- 在线等 Java 中格式化I/O 是什么?
- 为何我在XP操作系统下面装不了j2sdk?
- 又一个显示汉字的弱弱的问题!
- 如何用Java完成音乐播放暂停功能
- 控件使用异常:component must be showing on the screen to determine its location
是你数据库数据类型用错了,你就不要搞char型的撒,改用varchar(10)char(10)是啥意思?你自己都说了,不够10个长度自动在后面补充空格。varchar(10)啥意思?你的数据只有5个字符它就放5个字符。
char数据类型是固定列宽而varchar是可变列宽。
举个简单的例子char(10),如果给的数据长度不够10那么就会在后面自动添加空格填补空位,
而varchar(10)则不会产出这个效果,你给多少数据长度就是多少,只要不超出范围就行。
不知道我这样解释能不能帮到你。
但插入后就变成三个字符加上七个空格。不够十个会自动补齐。 ...