这个java无关,如果你熟悉数据库,就会明白,在数据库中,你的字段如果可以成char型就是这样的,当string小于你指定的长度时,将用空格填充。为了避免这样的情况,你可以把字段定义成varchar型,这是变长的,也就是说,你字符串多长,就插如多长的,不会在后面加空格。

解决方案 »

  1.   

    同上,在取出来的时候通常都用一下trim()
      

  2.   

    完全同意wjmmml(笑着悲伤) ,
    如果是oracle,可以是varchar2()。
      

  3.   

    我用的是varchar,如果不使用?,直接把sql语句构造好再做,就没有这个问题
      

  4.   

    "同上,在取出来的时候通常都用一下trim()"
    呵呵 万一人家就是要保留前面的空格 哪不就……:)
      

  5.   

    The driver converts this to an SQL VARCHAR or LONGVARCHAR value (depending on the argument's size relative to the driver's limits on VARCHAR values) when it sends it to the database.jdbc驱动好像已经自动补空了
      

  6.   

    在 sql 里 用Rtrim('    aaaa     ')会去掉右面的空格  ltrim('    aaaa     ')会去掉左边的空格。如果两边的都想去掉,呵呵自己动脑想吧