PostgreSQL SELECT 查询堆栈?
PostgreSQL SELECT query stack?
我正在使用 Java、Postgres,我正在尝试 select 使用 select 查询从数据库中获取一些数据,并将结果设置在 table.但是我得到一个空 table!即使选择的值在数据库中
这是代码:
JButton btnNewButton = new JButton("Rechercher");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
Connection conn = conectar();
String b = "Ordre";
String a = (String) comboBox.getSelectedItem();
System.out.println("ordre = " + a);
if(a == b) {
String sql2 = "select * from ordre where num_ordre = '" +textArea.getText()+"'";
Statement stm2;
try {
stm2 = conn.createStatement();
ResultSet rs1 = stm2.executeQuery(sql2);
while (rs1.next()) {
table.setModel(DbUtils.resultSetToTableModel(rs1));
}
rs1.close();
stm2.close();
}
catch(SQLException e2 ) {
System.out.println("Error = " + e2.getMessage());
}
}
else {
System.out.println("LA CONDITION N EST PAS SATISFAITE");
}
}
您不应该使用 ==
运算符来比较 Java 中的 String
- 它会检查两个对象是否相同 reference,并不是说它们的内容是相等的。相反,您应该使用 equals(Object)
方法:
if (a.equals(b)) { // Instead of using ==
我正在使用 Java、Postgres,我正在尝试 select 使用 select 查询从数据库中获取一些数据,并将结果设置在 table.但是我得到一个空 table!即使选择的值在数据库中
这是代码:
JButton btnNewButton = new JButton("Rechercher");
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
Connection conn = conectar();
String b = "Ordre";
String a = (String) comboBox.getSelectedItem();
System.out.println("ordre = " + a);
if(a == b) {
String sql2 = "select * from ordre where num_ordre = '" +textArea.getText()+"'";
Statement stm2;
try {
stm2 = conn.createStatement();
ResultSet rs1 = stm2.executeQuery(sql2);
while (rs1.next()) {
table.setModel(DbUtils.resultSetToTableModel(rs1));
}
rs1.close();
stm2.close();
}
catch(SQLException e2 ) {
System.out.println("Error = " + e2.getMessage());
}
}
else {
System.out.println("LA CONDITION N EST PAS SATISFAITE");
}
}
您不应该使用 ==
运算符来比较 Java 中的 String
- 它会检查两个对象是否相同 reference,并不是说它们的内容是相等的。相反,您应该使用 equals(Object)
方法:
if (a.equals(b)) { // Instead of using ==