SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, A.tabname AS objectName , tabType AS tableType FROM informix.systables A WHERE A.tabType IN ('T', 'V') ORDER BY parentCatalog, parentSchema, objectName SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, A.tabname AS objectName , tabType AS tableType FROM informix.systables A WHERE A.tabType IN ('T') ORDER BY parentCatalog, parentSchema, objectName SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, A.tabname AS objectName , tabType AS tableType FROM informix.systables A WHERE A.tabType IN ('V') ORDER BY parentCatalog, parentSchema, objectName SELECT parentCatalog, parentSchema, parentObject, columnName , TO_CHAR(CASE WHEN datatype = 0 THEN 'char' WHEN datatype = 1 THEN 'smallint' WHEN datatype = 2 THEN 'integer' WHEN datatype = 3 THEN 'float' WHEN datatype = 4 THEN 'smallfloat' WHEN datatype = 5 THEN 'decimal' WHEN datatype = 6 THEN 'serial' WHEN datatype = 7 THEN 'date' WHEN datatype = 8 THEN 'money' WHEN datatype = 9 THEN 'null' WHEN datatype = 10 THEN 'datetime' WHEN datatype = 11 THEN 'byte' WHEN datatype = 12 THEN 'text' WHEN datatype = 13 THEN 'varchar' WHEN datatype = 14 THEN 'interval' WHEN datatype = 15 THEN 'nchar' WHEN datatype = 16 THEN 'nvarchar' WHEN datatype = 17 THEN 'int8' WHEN datatype = 18 THEN 'serial8' WHEN datatype = 19 THEN 'set' WHEN datatype = 20 THEN 'multiset' WHEN datatype = 21 THEN 'list' WHEN datatype = 22 THEN 'row' WHEN datatype = 23 THEN 'collection' WHEN datatype = 24 THEN 'rowref' WHEN datatype = 40 THEN 'variable-length opaque type' WHEN datatype = 41 THEN 'fixed-length opaque type' WHEN datatype = 4118 THEN 'named row type' ELSE 'unknown' END ) AS datatype , colLength , CASE WHEN datatype IN('5', '8') THEN colPrecision ELSE 0 END AS colPrecision , CASE WHEN datatype IN('5', '8') THEN colScale ELSE 0 END as colScale, isNullable , defaultValue, collationSequence, description FROM ( SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, A.tabname AS parentObject, B.colname columnName , CASE WHEN B.coltype >= 256 THEN B.coltype - 256 ELSE B.coltype END AS datatype, B.collength AS colLength , round(B.collength / 256) AS colPrecision, mod(B.collength, 256) AS colScale , CASE WHEN B.coltype >= 256 THEN '0' ELSE '1' END AS isNullable, '' AS defaultValue, '' AS characterSet, '' AS collationSequence, '' AS description FROM informix.syscolumns B, informix.systables A WHERE A.tabid > 99 AND tabType IN ('T', 'V') AND A.tabid = B.tabid ORDER BY parentCatalog, parentSchema, parentObject, B.colno) SELECT parentCatalog, parentSchema, parentObject, objectName, columnRef, description FROM (SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part1 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part1 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part2 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part2 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part3 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part3 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part4 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part4 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part5 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part5 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part6 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part6 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part7 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part7 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part8 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part8 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part9 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part9 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part10 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part10 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part11 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part11 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part12 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part12 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part13 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part13 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part14 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part14 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part15 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part15 = D.colno UNION SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, C.tabname AS parentObject, A.constrname AS objectName, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype in ('U', 'P') AND A.idxname = B.idxname AND B.part16 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part16 = D.colno ORDER BY parentCatalog, parentSchema, parentObject, objectName, colsequence) SELECT foreignKeyCatalog AS parentCatalog, foreignKeySchema AS parentSchema, parentObject, foreignKeyName, exportedColumnRef, colSequence, foreignKeyCatalog AS importedCatalog, foreignKeySchema AS importedSchema, importedTable, importedKey, '' importedColumn, description FROM ( SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part1 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part1 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part2 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part2 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part3 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part3 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part4 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part4 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part5 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part5 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part6 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part6 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part7 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part7 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part8 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part8 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part9 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part9 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part10 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part10 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part11 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part11 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part12 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part12 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part13 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part13 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part14 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part14 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part15 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part5 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid UNION SELECT '' AS foreignKeyCatalog, trim(XA.owner) AS foreignKeySchema, XC.tabname AS parentObject, XA.constrname AS foreignKeyName, PKTAB.tabname importedTable, PKC.constrname importedKey , XD.colname AS exportedColumnRef, '' description, XD.colno colsequence FROM informix.sysconstraints XA, informix.sysindexes XB, informix.systables XC, informix.syscolumns XD, informix.sysreferences XE, informix.sysconstraints PKC, informix.systables PKTAB WHERE XA.constrtype in ('R') AND XA.idxname = XB.idxname AND XB.part16 > 0 AND XB.tabid = XC.tabid AND XB.tabid = XD.tabid AND XB.part16 = XD.colno AND XA.constrid = XE.constrid AND PKC.constrid = XE.primary AND XE.ptabid = PKTAB.tabid ) ORDER BY parentCatalog, parentSchema, parentObject, foreignKeyName, importedKey, colSequence SELECT parentCatalog, parentSchema, parentObject, indexName, CASE indexType WHEN 'U' THEN '1' ELSE '0' END isUnique, CASE clustered WHEN 'C' THEN '2' ELSE '0' END storageType, parentCatalog, parentSchema, parentObject, colsequence, columnRef, description FROM (SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part1 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part1 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part2 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part2 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part3 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part3 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part4 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part4 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part5 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part5 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part6 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part6 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part7 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part7 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part8 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part8 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part9 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part9 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part10 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part10 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part11 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part11 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part12 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part12 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part13 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part13 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part14 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part14 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part15 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part15 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname UNION SELECT trim(I.owner) AS parentCatalog, trim(I.owner) AS parentSchema, C.tabname AS parentObject, I.idxname AS indexName, I.idxtype AS indexType, I.clustered AS clustered, D.colname AS columnRef, '' description, d.colno colsequence FROM informix.sysconstraints A, informix.sysindices I, informix.sysindexes B, informix.systables C, informix.syscolumns D WHERE A.constrtype NOT IN ('U', 'P') AND A.idxname = B.idxname AND B.part16 > 0 AND B.tabid = C.tabid AND B.tabid = D.tabid AND B.part16 = D.colno AND B.owner = trim(I.owner) AND B.idxname = I.idxname ORDER BY parentCatalog, parentSchema, parentObject, indexName, colsequence) SELECT trim(B.owner) AS parentCatalog, trim(B.owner) AS parentSchema, B.tabname AS synonymName, '' externalHostRef, trim(C.owner) AS targetRefCatalog, trim(C.owner) AS targetRefSchema, C.tabname AS targetName, '' description FROM informix.syssyntable A, informix.systables B, informix.systables C WHERE A.tabid = B.tabid AND A.btabid = C.tabid ORDER BY parentCatalog, parentSchema, synonymName SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, A.procname AS procedureName, '' AS description, CASE internal WHEN 'f' then 'function' ELSE 'procedure' END AS invocationType FROM informix.sysprocedures A ORDER BY parentCatalog, parentSchema, procedureName TBD TBD SELECT trim(A.owner) AS parentCatalog, trim(A.owner) AS parentSchema, A.tabname AS objectName , tabType AS tableType FROM informix.systables A WHERE A.tabType IN ('T','V') ORDER BY parentCatalog, parentSchema, objectName SELECT trim(A.name) AS objectName, '' AS description FROM sysmaster:informix.sysdatabases A GROUP BY A.name ORDER BY objectName SELECT trim(A.owner) AS objectName, '' AS description FROM sysmaster:informix.sysdatabases A WHERE A.name = '' GROUP BY A.owner ORDER BY objectName SELECT A.tabname AS objectName, '' AS description FROM informix.systables A WHERE A.tabType = 'T' AND A.owner = '' GROUP BY A.tabname ORDER BY objectName SELECT A.tabname AS objectName, '' AS description FROM informix.systables A WHERE A.tabType = 'V' AND A.owner = '' GROUP BY A.tabname ORDER BY objectName SELECT trim(B.colname) AS objectName, '' AS description FROM informix.syscolumns B, informix.systables A WHERE A.tabid > 99 AND A.tabType IN ('T', 'V') AND A.tabid = B.tabid AND A.owner = '' AND A.tabname = '' ORDER BY B.colno SELECT B.tabname AS objectName, '' description FROM informix.syssyntable A, informix.systables B WHERE A.tabid = B.tabid AND B.owner = '' ORDER BY objectName SELECT A.procname AS objectName, '' AS description FROM informix.sysprocedures A WHERE internal != 'f' AND A.owner = '' ORDER BY A.procname SELECT A.procname AS objectName, '' AS description FROM informix.sysprocedures A WHERE internal = 'f' AND A.owner = '' ORDER BY A.procname TBD