我们使用jdbc-odbc桥连接到MS SQL数据库.执行插入或更新时,将字符串放入填充到数据库字段长度的数据库中.有没有办法关闭这种行为(字符串应该没有填充进入表)?
作为参考,我们能够使用SQL管理工具和查询分析器插入不包含填充的字段值,所以我很确定这是在jdbc或odbc层事件中发生的.
编辑:数据库中的字段列为nvarchar(X),其中X = 50,255等等
编辑2:执行插入的调用是使用预准备语句,如:
PreparedStatement stmt = new con.prepareStatement("INSERT INTO...."); stmt.setString(1, "somevalue");
Ascalonian.. 5
你是如何设置字符串的?你在做什么?:
PreparedStatement stmt = new con.prepareStatement("INSERT INTO...."); stmt.setString(1, "somevalue");
如果是这样,试试这个:
stmt.setObject(1, "somevalue", Types.VARCHAR);
再一次,这只是猜测,而没有看到你如何插入.
你是如何设置字符串的?你在做什么?:
PreparedStatement stmt = new con.prepareStatement("INSERT INTO...."); stmt.setString(1, "somevalue");
如果是这样,试试这个:
stmt.setObject(1, "somevalue", Types.VARCHAR);
再一次,这只是猜测,而没有看到你如何插入.