如何找到给定数据库的Sybase索引列表?

时间:2009-09-23 19:48:09

标签: indexing isql

如何在Sybase中找到给定数据库的索引列表?

4 个答案:

答案 0 :(得分:8)

Query against sysobjects and sysindexes:
SELECT o.name,
       i.name
  FROM sysobjects o
  JOIN sysindexes i
    ON (o.id = i.id)

Sybase网站上提供了有关sysobjects和sysindexes系统表解释的文档。

http://www.edbarlow.com/加载存储过程库并输入 sp__helpindex

或使用Sybase提供的sp_helpindex,它希望table-name作为参数。

答案 1 :(得分:2)

SELECT Object_name(id)
FROM   sysindexes si
WHERE  indid > 0  

答案 2 :(得分:1)

要在Sybase ASE中获取完整的索引列表,我们可以使用以下查询 -

选择   SI *。 从   sysobjects so,sysindexes si where so.id = si.id and si.indid> 0

请记住,如果存在非聚集索引,sysobjects系统表和sysindexes表之间的简单选择将提供表名和索引名。请查看以下链接以获取更多信息 -

Sybase ASE - How to find index list in a sybase database

答案 3 :(得分:0)

在Sybase版SAP IQ / 16中,您可以获取以下索引列表(表名称my_table区分大小写):

select *
from sys.sysindexes
where tname = 'my_table';

您可以按如下方式检查sybase版本:

select @@version