Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Gibt es eine Möglichkeit, eine benutzerfreundliche Fehlermeldung bei einer Einschränkungsverletzung auszugeben?

Einschränkungen sind das, was Datenbanken verwenden, um sich vor fehlerhaften Anwendungen zu schützen nicht von Benutzern.

Das bedeutet, dass Beschränkungsverletzungen von der Anwendung erfasst werden sollten und möglicherweise zur Präsentation für den Benutzer bereinigt. Ich würde eine Anwendung, die dies nicht tut, in gewisser Weise als mangelhaft betrachten.

Ich sage "möglicherweise", da Ihre Anwendung (zumindest für diesen Fall) dies niemals sehen sollte. Es sollte mit ziemlicher Sicherheit ein Dropdown-Steuerelement mit begrenzter Auswahl für so etwas verwenden. Wenn es ein Kombinationsfeld oder (Schock, Horror) ein Freiformat-Texteingabefeld verwendet, müsste es neu definiert werden.

Das würde bedeuten, dass die Verletzung niemals auftreten würde, es sei denn natürlich, die Anwendung und die Einschränkung würden irgendwann nicht mehr synchron sein. Aber das ist etwas, das beim Testen erkannt werden sollte, lange bevor ein Kunde Ihre Anwendung jemals in seine schmuddeligen kleinen Hände bekommt.

Um Ihre eigentliche Frage zu beantworten, können die Meldungen, die von Oracle für Einschränkungsverletzungen ausgegeben werden, nicht geändert werden. Das Beste, was Sie tun können, ist, Ihre Einschränkungen intelligent zu benennen, damit sie für einen Endbenutzer sinnvoll sind.

Aber ich behaupte immer noch, dass diese Darstellung von Problemen für einen Benutzer in der Verantwortung der Anwendungsschicht liegt, nicht der Datenbankschicht.