Hallo,
Ich stehe vor einem Problem. Und zwar möchte ich bevor ich einen "insert"-Befehl ausführe prüfen, ob der DS (bzw. email und passwort) einer Person in der Datenbank schon vergeben ist. Benutze eine phpMyAdmin SQL-Datenbank. Die Spalten "email" und "passwort" habe ich in der DB bereits als Unique markiert.
Hier ein Ausschnitt der Mapperklasse die den insert-Befehel ausführt.
Ich weiß nun nicht wo ich genau abfragen muss, ob die email oder das passwort bereits vergeben ist. Vielleicht kann mir da jemand weiterhelfen. Danke
Grüße NORD
Ich stehe vor einem Problem. Und zwar möchte ich bevor ich einen "insert"-Befehl ausführe prüfen, ob der DS (bzw. email und passwort) einer Person in der Datenbank schon vergeben ist. Benutze eine phpMyAdmin SQL-Datenbank. Die Spalten "email" und "passwort" habe ich in der DB bereits als Unique markiert.
Hier ein Ausschnitt der Mapperklasse die den insert-Befehel ausführt.
Java:
/**
* Dient dazu, ein <code>Person</code>-Objekt in die Datenbank zu speichern
* @param pe das zu speichernde Person-Objekt
* @return das übergebene Person-Objekt
*/
public Person createPerson(Person pe) {
Connection con = DBConnection.connection();
try {
Statement stmt = con.createStatement();
/*
* Hier wird überprüft welche person_id bisher die höhste ist.
*/
ResultSet rs = stmt.executeQuery(
"SELECT MAX(person_id) AS maxid " +
"FROM person");
if (rs.next()) {
try {
/* Hier wird die bisher höhste vorhandene person_id um +1 erhöht.
*/
pe.set_person_id(rs.getInt("maxid") + 1);
stmt = con.createStatement();
/* Die tatsächliche Einfügeoperation mit den übergebenden Attributen.
*/
stmt.executeUpdate("INSERT INTO person (person_id, vorname, nachname, raum, email, telefon, passwort) VALUES (" +
pe.get_person_id() + ",'" +
pe.get_vorname() + "','" +
pe.get_nachname()+ "','" +
pe.get_raum()+ "','" +
pe.get_email()+ "','" +
pe.get_telefon()+ "','" +
pe.get_passwort() + "')");
} catch (RemoteException ex) {
ex.printStackTrace();
}
}
} catch (SQLException e2) {
e2.printStackTrace();
}
/* Rückgabe des angelegten Objekts pe von Typ Person.
*/
return pe;
}
Ich weiß nun nicht wo ich genau abfragen muss, ob die email oder das passwort bereits vergeben ist. Vielleicht kann mir da jemand weiterhelfen. Danke
Grüße NORD
Zuletzt bearbeitet von einem Moderator: