5

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

4

4 回答 4

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,它将表名作为参数。

于 2009-09-24T02:14:28.137 回答
2
SELECT Object_name(id)
FROM   sysindexes si
WHERE  indid > 0  
于 2012-10-25T09:18:04.250 回答
1

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

select si.* from sysobjects so, sysindexes si where so.id = si.id and si.indid > 0

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

Sybase ASE - 如何在 sybase 数据库中查找索引列表

于 2011-09-13T17:31:06.820 回答
0

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

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

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

select @@version
于 2017-03-08T17:50:13.663 回答