首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在数据库中存储为零的双精度值

问在数据库中存储为零的双精度值
EN

Stack Overflow用户
提问于 2014-02-18 13:28:37
回答 1查看 225关注 0票数 2

我有一个表在我的postgres数据库中。学生,其中名称是varchar(20),marks1和marks2是双精度数据类型。

我在java类中使用了预准备语句。

代码语言:javascript
复制
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。如下所示。

代码语言:javascript
复制
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。我想存一个双精度的值。我该如何解决这个问题?

EN

回答 1

Stack Overflow用户

发布于 2014-02-18 13:33:12

我认为最好的方法是更改Java类以反映数据模型

1)将marks字段和getters/setter改为双精度

2)将PreparedStatement修改为setDouble

请参阅setDouble

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21845080

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档