我有一个表在我的postgres数据库中。学生,其中名称是varchar(20),marks1和marks2是双精度数据类型。
我在java类中使用了预准备语句。
PreparedStatement ps=con.preparestatement("insert into student values(?,?,?);
ps.setString(1,t.getUname());
ps.setDouble(2,t.getUmarks1());
ps.setDouble(3,t.getUmarks2());
status=ps.executeUpdate();但是,当发送一个双精度值时,它会显示我的问题中提到的上述错误。
我还有另一个类,其中定义了getter和setter。如下所示。
public class User {
private String uname;
private double umarks1,umarks2;
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public double getUmarks1() {
return umarks1;
}
public void setUmarks1(double umarks1) {
this.umarks1 = umarks1;
}
public double getUmarks2() {
return umarks2;
}
public void setUmarks2(double umarks2) {
this.umarks2 = umarks2;
}
} 如果我将数据类型更改为double,则会在数据库中保存0。我想存一个双精度的值。我该如何解决这个问题?
发布于 2014-02-18 13:33:12
https://stackoverflow.com/questions/21845080
复制相似问题