如何将正确的值从java GUI插入postgresql数据库? [英] How do I insert correctly values from java GUI into postgresql data base?

查看:99
本文介绍了如何将正确的值从java GUI插入postgresql数据库?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在使用java创建的postgres表中插入数据时遇到问题。代码的创建表部分工作正常,它只在我向表中插入没有任何反应的值时。我用来填充表tt的代码是:



我尝试了什么:



private void jButton1ActionPerformed(java.awt.event.ActionEvent evt){

String txt1 = jTextField1.getText();

int number = Integer。 parseInt(txt1);

String name = jTextField2.getText();

String txt3 = jTextField3.getText();

int mean = Integer.parseInt(txt3);

连接c = null;

语句stmt = null;

尝试{

Class.forName(org.postgresql.Driver);

c = DriverManager.getConnection(jdbc:postgresql:// localhost:5432 / tst,postgres,21262050);

c.setAutoCommit(false);

System.out.println(成功打开数据库);

String sql =INSERT INTO tt(noun,max,nbr)VALUES(?,?,?);

PreparedStatement pst = c.prepareStatement(sql);

pst.setString(1,name);

pst.setInt(2,mean);

pst.setInt(3,number);



pst.executeUpdate();



} catch(SQLException ex){

Logger.getLogger(insrt.class.getName())。log(Level.SEVERE,null,ex);

}





catch(例外e){

e.printStackTrace();

}



}



public static void main(String args []){



java.awt.EventQueue.invokeLater(new Runnable(){

public void run(){

new insrt()。setVisible(true);

}

});

}

解决方案

解决了我必须在pst.executeUpdate()之后添加c.commit();

I am having problems inserting data into a postgres table created using java. The created table part of the code works fine, its only when I am inserting values into the table that nothing happens. The code I am using to populate the table tt is:

What I have tried:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
String txt1 = jTextField1.getText();
int number = Integer.parseInt(txt1);
String name= jTextField2.getText();
String txt3 = jTextField3.getText();
int mean = Integer.parseInt(txt3);
Connection c = null;
Statement stmt = null;
try {
Class.forName("org.postgresql.Driver");
c = DriverManager.getConnection("jdbc:postgresql://localhost:5432/tst", "postgres", "21262050");
c.setAutoCommit(false);
System.out.println("Opened database successfully");
String sql = "INSERT INTO tt(noun, max, nbr) VALUES(?, ?, ?)";
PreparedStatement pst = c.prepareStatement(sql);
pst.setString(1, name);
pst.setInt(2,mean );
pst.setInt(3, number);

pst.executeUpdate();

} catch (SQLException ex) {
Logger.getLogger(insrt.class.getName()).log(Level.SEVERE, null, ex);
}


catch(Exception e){
e.printStackTrace();
}

}

public static void main(String args[]) {

java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new insrt().setVisible(true);
}
});
}

解决方案

resolved just i have to add c.commit() after pst.executeUpdate();


这篇关于如何将正确的值从java GUI插入postgresql数据库?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆