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

Anzeigenamen aller Constraints für eine Tabelle in Oracle SQL

Sie müssen das Datenwörterbuch abfragen, insbesondere USER_CONS_COLUMNS Ansicht, um die Tabellenspalten und die entsprechenden Einschränkungen anzuzeigen:

SELECT *
  FROM user_cons_columns
 WHERE table_name = '<your table name>';

Zu Ihrer Information, es sei denn, Sie haben Ihre Tabelle ausdrücklich mit einem Kleinbuchstabennamen (mit doppelten Anführungszeichen) erstellt, dann wird der Tabellenname standardmäßig in Großbuchstaben geschrieben, also stellen Sie sicher, dass dies in Ihrer Abfrage so ist.

Wenn Sie dann weitere Informationen über die Einschränkung selbst sehen möchten, fragen Sie USER_CONSTRAINTS ab Ansicht:

SELECT *
  FROM user_constraints
 WHERE table_name = '<your table name>'
   AND constraint_name = '<your constraint name>';

Wenn die Tabelle in einem Schema gespeichert ist, das nicht Ihr Standardschema ist, müssen Sie die Ansichten möglicherweise durch Folgendes ersetzen:

all_cons_columns

und

all_constraints

Hinzufügen zur where-Klausel:

   AND owner = '<schema owner of the table>'