Чтобы проверить наличие ограничений NOT NULL, вы можете запросить ALL_TAB_COLS
для NULLABLE
:
Например, в приведенном ниже запросе будут показаны все столбцы, которые можно обнулять. Точно так же вы можете фильтровать как NULLABLE = 'N'
, чтобы получить столбцы, которые не равны нулю.
SELECT column_name
FROM all_tab_cols
WHERE owner = 'HR'
AND table_name = 'EMPLOYEES'
AND NULLABLE ='Y';
COLUMN_NAME
---------------
FIRST_NAME
PHONE_NUMBER
SALARY
COMMISSION_PCT
MANAGER_ID
DEPARTMENT_ID
6 rows selected.
Для автоматически сгенерированных IDENTITY
столбцов вы можете запросить ALL_TAB_IDENTITY_COLS
.
SELECT column_name,
generation_type,
identity_options
FROM all_tab_identity_cols
WHERE owner = 'OWNER'
AND table_name = 'TABLE_NAME';
Для быстрой ссылки на описание объекта вы также можете использовать команду SQL Plus DESCRIBE
. Он также будет работать на большинстве инструментов, поддерживающих команды sqlplus, таких как SQL Developer et c.