SELECT  
        ALL_TAB_COLUMNS.COLUMN_NAME,
        ALL_TAB_COLUMNS.DATA_TYPE,
        ALL_TAB_COLUMNS.DATA_LENGTH,
        ALL_TAB_COLUMNS.DATA_PRECISION,
        ALL_TAB_COLUMNS.NULLABLE,
        ALL_TAB_COLUMNS.DATA_DEFAULT, 
        DBA_CONSTRAINTS.CONSTRAINT_TYPE
FROM ALL_TAB_COLUMNS 
LEFT JOIN DBA_CONS_COLUMNS ON DBA_CONS_COLUMNS.OWNER = ALL_TAB_COLUMNS.OWNER
                          AND DBA_CONS_COLUMNS.TABLE_NAME = ALL_TAB_COLUMNS.TABLE_NAME
                          AND DBA_CONS_COLUMNS.COLUMN_NAME = ALL_TAB_COLUMNS.COLUMN_NAME
LEFT JOIN DBA_CONSTRAINTS  ON DBA_CONSTRAINTS.OWNER = ALL_TAB_COLUMNS.OWNER
                          AND DBA_CONSTRAINTS.TABLE_NAME = ALL_TAB_COLUMNS.TABLE_NAME
                          AND DBA_CONSTRAINTS.CONSTRAINT_NAME = DBA_CONS_COLUMNS.CONSTRAINT_NAME
                          AND DBA_CONSTRAINTS.CONSTRAINT_TYPE = 'P'
WHERE ALL_TAB_COLUMNS.OWNER ='<SCHEMA>'  -- XL[}
  AND ALL_TAB_COLUMNS.TABLE_NAME = '<TABLE>'
  AND ALL_TAB_COLUMNS.TABLE_NAME IN (SELECT OBJECT_NAME 
                     FROM ALL_OBJECTS 
                    WHERE OWNER='<SCHEMA>'  -- XL[}
                      AND OBJECT_TYPE='TABLE' )  -- e[uŒ

