我希望能夠在列中搜索Informix數據庫。在主表中有一個cust_nbr列,然後在未知數量的表中引用。如何在列中搜索informix數據庫
在Informix中,有沒有辦法查詢數據庫並獲取所有使用cust_nbr的表?
我希望能夠在列中搜索Informix數據庫。在主表中有一個cust_nbr列,然後在未知數量的表中引用。如何在列中搜索informix數據庫
在Informix中,有沒有辦法查詢數據庫並獲取所有使用cust_nbr的表?
SELECT tabname, colno, colname
FROM systables a, syscolumns b
WHERE a.tabid = b.tabid
and colname = "cust_nbr"
ORDER BY colno;
我發現在同一個地方的代碼,並與colname的= cust_nbr添加的額外restriant。
這似乎對我有用。我會驗證它,但所有跡象看起來像它的工作。
我發現,在其他文章中提到的Using the Informix Catalogs
您應該能夠從system catalog tables,sysreferences
中獲得這種類型的東西。從Using the Informix System Catalog採取:
SELECT a.tabname, constrname, d.tabname
FROM systables a, sysconstraints b, sysreferences c,
systables d
WHERE b.constrtype = 'R'
AND a.tabid = b.tabid
AND b.constrid = c.constrid
AND c.ptabid = d.tabid
AND a.tabname = ?;
所以我一直在尋找的文件,當你張貼了這個。我在哪裏把欄「cust_nbr」? – zach 2012-07-30 13:50:48
通過一些艱苦的工作,可以識別包含給定列名的外鍵(這可能是兩個表上兩個16部分索引中的每一個的第16列;這是艱鉅的工作!),但它是間接的,並不是列名的所有用途都需要處於這樣的限制。 SysTables和SysColumns的直接選擇要簡單得多。 – 2012-07-31 17:17:23