2016-10-21 49 views
0

如何查看AS400中特定表的索引?表中的表索引描述存储在哪个表中?AS400索引配置表

+0

dspfd mylib/myindex dspdbr mylib/mytable – danny117

+0

“view index”是什么意思?你想知道在表格中定义了哪些索引?你想查看为索引定义了哪些列?你想看看索引中有什么值吗? – user2338816

回答

1

如果你的索引与SQL创建你可以看到指数的清单当然在sysindexes系统视图

SELECT * FROM qsys2.sysindexes WHERE TABLE_SCHEMA='YOURLIBNAME' and 
    TABLE_NAME = 'YOURTABLENAME' 

如果你想详细列索引,你可以加入syskeys的表

SELECT KEYS.INDEX_NAME, KEYS.COLUMN_NAME  
    FROM qsys2.syskeys KEYS      
    JOIN qsys2.sysindexes IX ON KEYS.ixname = IX.name    
    WHERE TABLE_SCHEMA='YOURLIBNAME' and TABLE_NAME = 'YOURTABLENAME'    
    order by INDEX_NAME       
2

如果您“索引”实际上是一个逻辑文件,你可以看到这些使用列表:

select * from qsys2.systables 
where table_schema = 'YOURLIBNAME' and table_type = 'L' 
0

您也可以使用命令获取信息。命令DSPDBR FILE(LIBNAME/FILENAME)将显示依赖于物理文件的对象列表。显示数据依赖关系的对象可以通过运行DSPFD FILE(LIBNAME/FILENAME)来进一步探索。这将显示逻辑文件的访问路径。