Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
1|Aloisia|Ammerer|22|rot
...usw.
SELECT * FROM Persons WHERE NUMBER=1
Durchsuche die Tabelle Person und schau dabei auf die Spalte Number
Gehe in jede Zeile der Spalte
Wenn Number = 1 dann füge die Zeile zum Ergebnis hinzu
Suche weiter bis zum Ende der Tabelle
public Person(int i) //i=number
Connection con=null;
Person p=new Person();
try {
con = DriverManager.getConnection(
"jdbc:hsqldb:file:db/PSDB;shutdown=true", "sa",""
);
Statement stmt = con.createStatement();
ResultSet rs= stmt.executeQuery(buildloadString(i));
if(rs.next()){
int r = 0, c = 0;
String cat, quest, an1, an2, an3, an4;
cat = rs.getString(2).trim();
quest = rs.getString(3).trim();
an1 = rs.getString(4).trim();
an2 = rs.getString(5).trim();
an3 = rs.getString(6).trim();
an4 = rs.getString(7).trim();
r = Integer.parseInt(rs.getString(8));
c = Integer.parseInt(rs.getString(9));
q = new Person(i, cat, quest, an1, an2, an3, an4, r, c);
}
rs.close();
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
finally{
if ( con != null )
try {
con.close();
} catch ( SQLException e ) {
e.printStackTrace();
}
}
return p;
}
Mir fehlt da beim Code bisschen was zum Verständnis. Was ist buildloadString(i),
und kannst du die vollständige Person-Klasse herzeigen (oder zumindest Variablen und Konstruktoren)?
private int number;
private String category;
private String quest;
private String a1;
private String a2;
private String a3;
private String a4;
private int right;
private int currentFolder;
public Person() {
this(0, "null", "null", "null", "null", "null", "null", 1,0);
}
public Question(int n, String c, String q, String a1, String a2, String a3,
String a4, int r,int f) {
this.number = n;
this.setCat(c);
this.quest = q;
this.a1 = a1;
this.a2 = a2;
this.a3 = a3;
this.a4 = a4;
this.right = r;
this.currentFolder=f;
}
private static String buildloadString(int i){
String s="SELECT * FROM Person WHERE NUMBER="+i;
return s;
}
Und was willst du gerade machen? Alle Zeilen aus der DB laden und in je ein Person-Objekt speichern?
So, mein Problem, ich hab also 300 Daten und es werden 300 Zeilen bei jedem Aufruf überprüft => O(n^2)