JDBC - 如何在预准备语句中设置char

时间:2011-04-16 12:35:39

标签: java jdbc prepared-statement

我找不到像

这样的方法
  

char c ='c';

     

preparedStatement.setChar(1,c);

如何将字符设置为预处理语句?

3 个答案:

答案 0 :(得分:51)

附录B(数据类型转换表)中的JDBC Specification 4.0说明了以下转换:

此表还显示了SQLInput reader方法使用的转换,但它们仅使用建议的转换。

JDBC Type              Java Type
-------------------------------------------
CHAR                   String
VARCHAR                String
LONGVARCHAR            String
NUMERIC                java.math.BigDecimal
DECIMAL                java.math.BigDecimal
BIT                    boolean
BOOLEAN                boolean
TINYINT                byte
SMALLINT               short

表B-1映射到Java类型的JDBC类型

因此PreparedStatement.setString(1, String.valueOf(myChar))应该做到这一点。

答案 1 :(得分:4)

使用setString()设置变量。

要使用getString()并假设它不为null,请执行以下操作来获取字符:

getString("your_column").charAt(0);

答案 2 :(得分:0)

PreparedStatement.setString(1,c+" ");

PreparedStatement.setString(1,String.valueOf(c));