当前位置:  开发笔记 > 编程语言 > 正文

防止jdbc填充sql insert和update上的字符串

如何解决《防止jdbc填充sqlinsert和update上的字符串》经验,为你挑选了1个好方法。

我们使用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);

再一次,这只是猜测,而没有看到你如何插入.



1> Ascalonian..:

你是如何设置字符串的?你在做什么?:

PreparedStatement stmt = new con.prepareStatement("INSERT INTO....");
stmt.setString(1, "somevalue");

如果是这样,试试这个:

stmt.setObject(1, "somevalue", Types.VARCHAR);

再一次,这只是猜测,而没有看到你如何插入.

推荐阅读
mylvfamily
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有