sql >> Base de Datos >  >> RDS >> Oracle

Mostrar nombres de todas las restricciones para una tabla en Oracle SQL

Debe consultar el diccionario de datos, específicamente el USER_CONS_COLUMNS view para ver las columnas de la tabla y las restricciones correspondientes:

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

Para su información, a menos que haya creado específicamente su tabla con un nombre en minúsculas (usando comillas dobles), entonces el nombre de la tabla se establecerá de forma predeterminada en mayúsculas, así que asegúrese de que esté así en su consulta.

Si luego desea ver más información sobre la restricción en sí, consulte USER_CONSTRAINTS ver:

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

Si la tabla se encuentra en un esquema que no es su esquema predeterminado, es posible que deba reemplazar las vistas con:

all_cons_columns

y

all_constraints

añadiendo a la cláusula where:

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