Как я могу найти список индексов Sybase для данной базы данных?

Как я могу найти список индексов для данной базы данных в Sybase?


person aartist    schedule 23.09.2009    source источник


Ответы (3)


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

Документация по интерпретации системных таблиц sysobjects и sysindexes доступна на веб-сайте Sybase.

Загрузите библиотеку хранимых процедур с http://www.edbarlow.com/ и введите sp__helpindex

или используйте предоставленный Sybase sp_helpindex, который ожидает имя таблицы в качестве параметра.

person Paul Harrington    schedule 24.09.2009
comment
sp_helpindex... отлично! - person KornMuffin; 06.05.2015

Чтобы получить полный список индексов в Sybase ASE, мы можем использовать следующий запрос:

выберите si.* из sysobjects so, sysindexes si, где so.id = si.id и si.indid > 0

имейте в виду, что простой выбор между системной таблицей sysobjects и таблицей sysindexes даст имена таблиц вместе с именами индексов, если существуют некластеризованные индексы. Проверьте следующую ссылку для получения дополнительной информации -

Sybase ASE — Как найти индекс список в базе данных sybase

person Abhinav    schedule 13.09.2011

В версии Sybase SAP IQ/16 вы можете получить список индексов следующим образом (имя таблицы my_table чувствительно к регистру):

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

Вы можете проверить версию sybase следующим образом:

select @@version
person Orhan Celik    schedule 08.03.2017