SQLException.getSQLState
ruft das Objekt SQLState
für das Objekt SQLException
ab. Was sind alle möglichen Werte, die mit dieser Methode zurückgegeben werden können? Kann ich den Wert verwenden, um bestimmte Fehler zu identifizieren, die in der Datenbank aufgetreten sind (d. H. Kann dieser Wert mir mitteilen, ob es sich um eine PK-Verletzung oder eine eindeutige Einschränkung oder einen Spaltenwert für Groß usw. handelte)?Was sind alle möglichen Werte für SQLException.getSQLState?
Auch die DatabaseMetaData.getSQLStateType()
Methode soll angeben, ob die SQLSTATE
zurückgegeben von SQLException.getSQLState
ist X/Open (jetzt als offene Gruppe) SQL CLI oder SQL99. Der einzig mögliche Wert dafür sollte DatabaseMetaData.sqlStateXOpen == 1
und DatabaseMetaData.sqlStateSQL99 == 2
sein, aber ich bekomme den Wert 0
. Fehle ich etwas?
Gibt es eine Möglichkeit, den spezifischen Fehlertyp, der im DB aufgetreten ist, mit Kombinationen der oben genannten Methoden zu ermitteln? Kann ich auf die Werte von zählen? Unterscheiden sich diese Werte vom DB-Provider zum DB-Provider?
[Siehe auch diese Antwort] (http://stackoverflow.com/a/1989469/521799) –