ITPub博客

首页 > Linux操作系统 > Linux操作系统 > informix 相關信息

informix 相關信息

原创 Linux操作系统 作者:smalljunfei 时间:2008-05-26 09:26:20 0 删除 编辑

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/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: NIS 配置
请登录后发表评论 登录
全部评论

注册时间:2008-05-17

  • 博文量
    37
  • 访问量
    37497