powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / получить список полей индекса
6 сообщений из 6, страница 1 из 1
получить список полей индекса
    #35487055
HattoryHanzo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день. Нужно в получить список полей индекса. Сами индексы лежат в sysindexes. А вот вьюхи sysindexkeys (как в MSSQL), в которой указаны колонки - нет. Но есть поля sysindexes.keys1 - keys3 типа varbinary(255).
Есть возможность получить этот список в sql и какие существуют способы?
...
Рейтинг: 0 / 0
получить список полей индекса
    #35487074
HattoryHanzo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Забыл, это Sybase ASE 12.5.3
...
Рейтинг: 0 / 0
получить список полей индекса
    #35487159
Dmitry..
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
-- 	@indid = sysindexes.indid
-- 	@object_name = table name
	select @txt = ''
	select @i = 1  
	while @i <=  31  begin
		select @txt = @txt + index_col(@object_name, @indid, @i)+ ' ' + index_colorder(@object_name, @indid, @i)
		if (index_col(@object_name, @indid, @i+ 1 ) is null) break
		if @i >=  1  select @txt = @txt + ","
		select @i = @i +  1 
	end
...
Рейтинг: 0 / 0
получить список полей индекса
    #35487170
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
HattoryHanzoЗабыл, это Sybase ASE 12.5.3

Код: plaintext
1.
2.
3.
use sybsystemprocs
go
sp_helptext sp_helpindex
go
...
Рейтинг: 0 / 0
получить список полей индекса
    #35487439
HattoryHanzo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, разобрался.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
получить список полей индекса
    #38581148
Mikle83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Столкнулся с похожей задачей. Сделал следующий селект, может кому пригодиться:


Код: sql
1.
2.
3.
4.
5.
Select 
 si.indid, si.name, LV.No, index_col('TableName', si.indid, LV.No)
from sysindexes si
    join ListOfValue LV on LV.No <= si.keycnt-1
where si.id = object_id ('TableName')



где ListOfValue - это таблица, содержащая значения от 1 до 32
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / получить список полей индекса
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]