我用3个布尔列从表中得到不可预知的结果。
public ArrayList<Benutzerdaten> gibAlleBenutzer() {
String query = "SELECT * FROM Benutzerdaten";
Benutzerdaten b;
ArrayList<Benutzerdaten> benutzer = new ArrayList();
try {
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);
while (rs.next()) {
b = new Benutzerdaten(rs.getString("LoginName"), rs.getString("Name")
, rs.getString("Vorname"), rs.getString("Email"), rs.getInt("Passwort")
, rs.getBoolean("P"), rs.getBoolean("B"), rs.getBoolean("A"));
benutzer.add(b);
}
} catch (SQLException e) {
e.getMessage();
}
return benutzer;
}
正如你所看到的,我有3个布尔列,分别叫做P,B和A.其中一个条目来自Benutzerdaten&#39; P = false,B = false,A =真
但是,我从这个查询得到了不同的结果:P = false,B = true,A = false,我用调试器检查过。我无法想出查询返回错误结果的任何原因。为什么会这样?
我的Benutzerdaten类的构造函数:
public Benutzerdaten(String Login, String Name, String Vorname, String Email, int Passwort
, boolean produktkatalog, boolean benutzerverwaltung, boolean auswertung) {
this.Login = Login;
this.Name = Name;
this.Vorname = Vorname;
this.Email = Email;
this.Passwort = Passwort;
this.produktkatalog = produktkatalog;
this.benutzerverwaltung = benutzerverwaltung;
this.auswertung = auswertung;
}
按条目列出的布尔列的预期值: 0 =假,1 =真
P B A
一个。 0 0 1
湾1 1 0
℃。 1 0 0
但我得到了什么:
一个。 1 1 1
湾1 0 1
℃。 1 0 0