欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

高分求一有关问题:哪位高手知道informix里的对象语法结构存何处

更新时间: 2014-01-05 02:19:45 责任编辑: Author_N1

 

高分求一问题:谁知道informix里的对象语法结构存何处?
谁知道informix里的对象语法结构存何处?
----主要是触发器的源代码?
------最佳解决方案--------------------
select * from systrigbody;
------其他解决方案--------------------
获得数据库对象的方法探讨(2) 
角色
存储角色的表/视图有:

DBA_ROLES

描述数据库中所有角色。


取得角色方法:

SELECT ROLE FROM SYS.DBA_ROLES;

表空间
SELECT TABLESPACE_NAME FROM SYS.DBA_TABLESPACES;

数据文件
SELECT FILE_NAME, FILE_ID, TABLESPACE_NAME FROM SYS.DBA_DATA_FILES;

数据库连接
存储数据库连接的系统表/视图主要有:

DBA_LINKS
描述数据库中所有的连接的属性。
ALL_LINKS
描述数据库中所有的用户可访问的连接的属性。
USER_LINKS

描述数据库中当前用户的连接属性。


因此,可以从DBA_DB_LINKS中取得连接:
SELECT * FROM SYS.DBA_DB_LINKS;


同义词
SELECT * FROM SYS.ALL_SYNONYMS WHERE TABLE_OWNER = 'DBAUDIT';

程序包
取得程序包可以用:

SELECT OBJECT_NAME FROM SYS.ALL_OBJECTS WHERE OBJECT_TYPE = 'PACKAGE';

取得隶属于某个用户的程序包可以用:

SELECT OBJECT_NAME FROM SYS.ALL_OBJECTS WHERE OBJECT_TYPE = 'PACKAGE' AND OWNER = 'DBAUDIT';


取得程序包内容可以用:

SELECT TEXT FROM SYS.ALL_SOURCE WHERE NAME = 'XXX' AND TYPE = 'PACKAGE';

程序包体
取得程序包体可以用:

SELECT OBJECT_NAME FROM SYS.ALL_OBJECTS WHERE OBJECT_TYPE = 'PACKAGE BODY';

取得隶属于某个用户的程序包可以用:

SELECT OBJECT_NAME FROM SYS.ALL_OBJECTS WHERE OBJECT_TYPE = 'PACKAGE BODY ' AND OWNER = 'DBAUDIT';


取得程序包内容可以用:

SELECT TEXT FROM SYS.ALL_SOURCE WHERE NAME = 'XXX' AND TYPE = 'PACKAGE BODY ';


暂不扫描。

高级队列
暂不扫描。

序列
暂不扫描。

数组类型
暂不扫描。


暂不扫描。

Java源
暂不扫描。

对象类型
暂不扫描。

刷新组
暂不扫描。

概要文件
暂不扫描。

Sybase
取得数据库名的方法
系统存储过程sp_helpdb

或者

USE master

SELECT d.name dbname, u.name owner FROM sysdatabases d, sysusers u WHERE d.suid = u.suid


取得表的方法
系统存储过程

USE xxx

EXEC sp_help

或者

获取指定数据库的用户表:

USE DBAudit
SELECT sysobjects.name AS tname, sysusers.name AS owner FROM sysobjects, sysusers WHERE sysobjects.uid = sysusers.uid AND type = 'U'

获取指定数据库的系统表:

USE DBAudit
SELECT sysobjects.name AS tname, sysusers.name AS owner FROM sysobjects, sysusers WHERE sysobjects.uid = sysusers.uid AND type = 'S'

或者统一使用:

USE DBAudit

SELECT sysobjects.name AS tname, sysusers.name AS owner FROM sysobjects, sysusers WHERE sysobjects.uid = sysusers.uid AND (type = 'U' OR type = 'S')

注:

sysobjects中type字段类型解释:

C = CHECK 约束

D = 默认值或 DEFAULT 约束

F = FOREIGN KEY 约束

L = 日志

FN = 标量函数

IF = 内嵌表函数

P = 存储过程

PK = PRIMARY KEY 约束(类型是 K)
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:19:45
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/8520/
本文WWW.DOC100.NET DOC100.NET版权所有。