首页 > Linux操作系统 > Linux操作系统 > informix 相關信息
Informix
取得数据库名的方法
DATABASE sysmaster
SELECT name, owner FROM sysdatabases
取得表的方法
获取指定数据库的表:
DATABASE xxx
SELECT tabname, owner, tabid FROM systables WHERE tabtype = 'T'
注:
tabid 为0-24为系统表,100-xxx为用户表。
tabtype字段类型解释:
T = 用户表
V = 视图
P = 私有同义词
S = 同义词
取得列的方法
DATABASE xxxDatabase
SELECT c.colname, c.coltype FROM syscolumns c, systables t WHERE c.tabid = t.tabid AND t.tabname = 'xxxTable'
可以取得包括视图的列。
注:
coltype 字段意义:
0 = CHAR 8 = MONEY
1 = SMALLINT 10 = DATETIME
2 = INTEGER 11 = BYTE
3 = FLOAT 12 = TEXT
4 = SMALLFLOAT 13 = VARCHAR
5 = DECIMAL 14 = INTERVAL
6 = SERIAL 15 = NCHAR
7 = DATE 16 = NVARCHAR
取得视图的方法
获取指定数据库的视图:
DATABASE xxx
SELECT tabname, owner FROM systables WHERE tabtype = 'V'
取得视图内容:
SELECT v.viewtext FROM sysviews v, systables t WHERE v.tabid = t.tabid AND t.tabname = 'xxxTable'
取得存储过程的方法
获取指定数据库的存储过程:
DATABASE xxx
SELECT procname, owner FROM sysprocedures
获取指定数据库的存储过程的内容:
SELECT b.data FROM sysprocbody b, sysprocedures p WHERE b.procid = p.procid AND p.procname = 'systdist' AND datakey = 'T'
取得函数的方法
Informix不支持用户定义函数?
取得触发器的方法
获取指定数据库的表的触发器:
SELECT g.trigname, g.owner, g.event FROM systriggers g, systables t WHERE g.tabid = t.tabid AND t.tabname = 'xxxTable'
取得触发器内容:
SELECT b.data FROM systrigbody b, systriggers g WHERE b.trigid = g.trigid AND g.trigname = '%s' AND datakey = 'D'
取得索引的方法
获取指定数据库的表的触发器:
SELECT i.idxname FROM sysindexes i, systables t WHERE i.tabid = t.tabid AND t.tabname = 'xxxTable'
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/11783655/viewspace-310281/ ,如需转载,请注明出处,否则将追究法律责任。