SQL Exception auf Unique überprüfen

CroweHammer

Bekanntes Mitglied
Sers Leute,

Ich einer Tabelle meiner Datenbank ist eine Spalte als username definiert, welche ich unique gesetzt habe.
Wird jetzt ein username eingegeben mit einem Namen, der schon in der Datenbank steht wird logischerweise eine SQLException geworfen.
Hab ich eine Möglichkeit abzufragen, ob die SQLException durch die Ursache Unique entstanden ist, um den User danach hinweisen zu können, dass der Name schon vorhanden ist?

Google brachte mir nicht die gewünschten Ergebnisse.
Greetz CroweHammer
 

CroweHammer

Bekanntes Mitglied
Java:
try {
            con.createStatement().executeUpdate(insert_user);
} catch(SQLException sqle) {
            JOptionPane.showMessageDialog(null, "Adding of the user failed");
}

hier mal ein simples Beispiel auf die Schnelle.
Wenn insert_user fehlschlägt, wegen der Ursache "Unique", will ich eine extra Meldung ausgeben.

edit: sry du warst schneller. okay ich werd mir das mal durchlesen.
D.h. die Exception wird nur geworfen, wenn es einen der drei Key-Fehler betrifft? unique, primary oder foreign?
 
Zuletzt bearbeitet:

Ebenius

Top Contributor
Wie gesagt, so genau kannst Du's nicht einschränken. Aber zumindest soweit:
Java:
try {
            con.createStatement().executeUpdate(insert_user);
} catch(SQLIntegrityConstraintViolationException sqle) {
            JOptionPane.showMessageDialog(null, "Constraint violation while adding new user");
} catch(SQLException sqle) {
            JOptionPane.showMessageDialog(null, "Adding of the user failed");
}
Ebenius
 

CroweHammer

Bekanntes Mitglied
Java:
try {
        con.createStatement().executeUpdate(insert_user);
} catch(SQLIntegrityConstraintViolationException sicve) {
        if(sicve.getErrorCode() == 1062) {
                JOptionPane.showMessageDialog(null, "The name already exists!" +
                                                    " Please, Choose another.");
      } else {
                JOptionPane.showMessageDialog(null, "Constraint violation while adding new user!");
      }          
} catch(SQLException sqle) {
        JOptionPane.showMessageDialog(null, "Adding of the user failed!");
}

danke dir Ebenius. Hat mir sehr geholfen. Dadurch, dass man den Errorcode abfragen kann, weiß man auch, dass wenn dieser 1062 zurückgibt eine Duplicate-Verletzung, also in diesem Fall im Zusammenhang mit Unique vorliegt.
Somit kann man auch genau auf eine Unique-Verletzung überprüfen :)

greetz CroweHammer
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
KOKASS Exception bei Datenbankconnect Datenbankprogrammierung 9
Kirby.exe SQL-Exception: Column not found Datenbankprogrammierung 6
S MySQL hibernate exception: illegal state exception : entityManagerFactory is closed Datenbankprogrammierung 5
G MySQL Java Problem: Nullpointer Exception obwohl Daten vorhanden sind? Datenbankprogrammierung 2
G PostgreSQL Nach Monaten auf einmal ClassNotFound-Exception Datenbankprogrammierung 3
K JPA Projekt Exception Datenbankprogrammierung 7
C jpa, exception Predeployment of PersistenceUnit failed Datenbankprogrammierung 1
M CommunicationLinkError - NullPointer Exception Datenbankprogrammierung 11
T MongoDB: Morphia REST 505 Exception Tomcat Datenbankprogrammierung 2
M SQL-Exception trotz funktionierendem SELECT Datenbankprogrammierung 4
N JDBC: rollback() bei Exception geht nicht!? Datenbankprogrammierung 1
M SQL Exception Datenbankprogrammierung 6
L Probleme mit DriverManager.getConnection(..) - Endlosschleife, Java Absturz, Keine Exception Datenbankprogrammierung 4
D Hibernate SaveOrUpdate Exception Datenbankprogrammierung 2
E MySQL Hibernate mit JaxWS führt zu LazyInitialization Exception Datenbankprogrammierung 8
E PostgreSQL Exception too ...many clients already bei DB-Abfrage Datenbankprogrammierung 14
T java sql exception getDate() Datenbankprogrammierung 2
O Viele Verbindungen-Exception bei insert Daten zur MySQL-Datenbank Datenbankprogrammierung 2
E Sql Exception Datenbankprogrammierung 14
M NestedTransaction- Exception in Hibernate Datenbankprogrammierung 15
F Derby/JavaDB SQL-Exception...Aber wieso!? :/ Datenbankprogrammierung 2
T Exception ResultSet Datenbankprogrammierung 7
Paristick MSSQL - JDBC Exception beim Registrieren Datenbankprogrammierung 5
S Null Pointer exception statement Datenbankprogrammierung 8
G JDBC Exception Datenbankprogrammierung 3
S ResultSet einer Datenbankabfrage - Nullpointer Exception Datenbankprogrammierung 13
F Derby/JavaDB Exception - Cannot accept Null Value (help) Datenbankprogrammierung 10
G Stored Procedure Exception Handling Datenbankprogrammierung 3
B Hibernate+JPA Exception in persistence.xml Datenbankprogrammierung 5
L SQL Exception Problem Datenbankprogrammierung 7
M hilfe zur einer Exception Datenbankprogrammierung 2
J Nullpointer Exception bei Zugriff auf Datenbank Datenbankprogrammierung 13
A MySQL Anbindung - Exception Handling Datenbankprogrammierung 2
R SQL Exception: Cursor position not valid Datenbankprogrammierung 7
O Oracle 11g wirft bei 90 % der installation eine Exception ? Datenbankprogrammierung 5
R Warum kommt eine Exception bei instanceof ? Datenbankprogrammierung 4
B SQL Exception Datenbankprogrammierung 9
E Datenbankverbindung Java MySQL Exception Datenbankprogrammierung 10
N Class not found Exception Datenbankprogrammierung 2
A Exception in thread "AWT-EventQueue-0" java.lang.N Datenbankprogrammierung 4
M SQL Exception bei LIMIT Datenbankprogrammierung 11
megachucky Problem mit: SQL Exception Before start of result set Datenbankprogrammierung 2
W updateRow() schmeißt eine Exception, weil schreibgeschützt Datenbankprogrammierung 6
M Sql Anfrage wirft Exception Datenbankprogrammierung 5
6 Communications link failure due to underlying exception Datenbankprogrammierung 10
R SQL Exception "Weiterleiten der Egebnissmenge" Datenbankprogrammierung 15
märliprinz Exception in thread "main" java.lang.OutOfMemoryEr Datenbankprogrammierung 9
S Java SQL-Exception bei Zugriff auf MSAccess Datenbankprogrammierung 2
K Exception bei Verbindungsaufbau Oracle Datenbank Datenbankprogrammierung 13
L "desc tablename" liefert SQL Exception mit execute Datenbankprogrammierung 6
M SQL Exception Datenbankprogrammierung 3
M Problem mit dem ActionListener und SQL Exception Datenbankprogrammierung 6
D Exception bei ResultSet.moveToInsertRow Datenbankprogrammierung 6
EagleEye problem mit exception Datenbankprogrammierung 2
L UPDATE löst Exception aus Datenbankprogrammierung 6
V Exception beim Speichern von eingegebenen Daten in Tabelle Datenbankprogrammierung 2
G ich bekomm immer die exception grrrr Datenbankprogrammierung 3
D Unklare SQL Exception Datenbankprogrammierung 3
T Spring MongoDB @Indexed(unique=true) Datenbankprogrammierung 0
L SQLite Ändern der Daten in einem UNIQUE Feld Datenbankprogrammierung 1
ruutaiokwu sql server werte swappen beim update-vorgang mit unique-constraints..? Datenbankprogrammierung 2
T Hibernate, HSQLDB und UNIQUE Datenbankprogrammierung 2
J SQL PRIMARY KEY unique Datenbankprogrammierung 5
ruutaiokwu unique kombination, welche mehrfach vorkommen darf??? Datenbankprogrammierung 3
S ist DB Spalte Unique ? Datenbankprogrammierung 2
G JPA Unique Constraint Problem Datenbankprogrammierung 1
E [SQL] Unique Constraint Datenbankprogrammierung 4
D Primary-Key -> Fehler: "Unique constraint violation& Datenbankprogrammierung 12
S UNIQUE-Eigenschaft Datenbankprogrammierung 2
E Kann man in einer if-Bedingung auch SELECT-Statements überprüfen? Datenbankprogrammierung 23
A Wie Tabelle auf bestimmten Inhalt überprüfen? Datenbankprogrammierung 7
S DB auf Wert überprüfen Datenbankprogrammierung 13
Meldanor Eingaben auf SQL Befehle überprüfen Datenbankprogrammierung 13
G HSQLDB überprüfen, ob Tabelle bereits existiert Datenbankprogrammierung 3
S Datenbankstruktur überprüfen Datenbankprogrammierung 2
M Verbindung überprüfen und bei Bedarf neu aufbauen Datenbankprogrammierung 3
G ResultSet - Wert überprüfen Datenbankprogrammierung 6

Ähnliche Java Themen

Neue Themen


Oben