java setstring_Java PreparedStatement setString更改字符

如标题中所示:可以肯定的是,我正在调试我的应用程序,因此在将字符串放入PreparedStatement变量中的地方,特殊字符更改为“?”.我实际上不知道在哪里搜索应该修复的东西,因此我不知道是否需要代码.无论如何,我将在此处放置一些内容:

PreparedStatement stm = null;

String sql = "";

try{

sql = "INSERT INTO methods (name, description) VALUES (?, ?)";

stm = connection.prepareStatement(sql);

stm.setString(1, method.getName());

stm.setString(2, method.getDescription());

//...

}catch(Exception e){}

在方法对象中调试“名称”字段时是正确的,但是将其添加到stm变量后,将其字符更改为“?”.

我已经找到了一个关于SO上类似西他那肽的话题,但是没有任何答案可以帮到我,因为我完全知道在语句中添加字符串,而不是在数据库中,这是不正确的.但是我不知道

有任何建议吗?

PS.我正在使用netbeans 6.7.1版本

编辑:我正在使用标准的netbeans调试器进行调试,并且在向’stm’变量添加字符串之前正在检查变量的状态.我什至将getName()方法更改为带有特殊字符的静态字符串.因此,可以肯定,使用Method类可以正常进行.

EDIT2:我又做了一个测试.检查的stm变量及其属性之一是设置为“ cp1252”的“ charEncoding”.所以主要的问题是..如何改变呢?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值