with a as( SELECT O_USR.NAME AS OWNER1 ,O_CONS.NAME AS CONSTRAINT_NAME1 ,CAST(CASE WHEN S_CONS.TYPE$ = 'F' THEN 'R' ELSE S_CONS.TYPE$ END AS VARCHAR(1)) AS type_ ,O_TAB.NAME AS TABLE_NAME1 ,COLS.NAME col FROM SYS.SYSCONS S_CONS ,SYS.SYSOBJECTS O_CONS ,SYS.SYSOBJECTS O_TAB ,SYS.SYSOBJECTS O_USR ,SYS.SYSCONS CON LEFT JOIN SYS.SYSINDEXES I ON I.ID = CON.INDEXID ,SYS.SYSCOLUMNS COLS WHERE O_CONS.SUBTYPE$ = 'CONS' AND CON.ID = S_CONS.ID AND COLS.ID = O_TAB.ID AND O_CONS.ID = S_CONS.ID AND O_TAB.SUBTYPE$ = 'UTAB' AND O_TAB.ID = S_CONS.TABLEID AND O_USR.ID = O_TAB.SCHID AND O_USR.TYPE$ = 'SCH' AND
O_USR.NAME = trim(upper('HNSIMIS')) AND
O_TAB.NAME IN
('AC43')
AND ( SF_COL_IS_IDX_KEY(I.KEYNUM, I.KEYINFO, COLS.COLID) = 1 OR CON.CHECKINFO IS NOT NULL ) )
select owner1,table_name1,constraint_name1,col
from a;
修改如下用户名与表名即可:
O_USR.NAME = trim(upper('HNSIMIS')) AND
O_TAB.NAME IN ('AC43')