Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Сортировка результата выполнения процедуры / 8 сообщений из 8, страница 1 из 1
14.12.2006, 12:01
    #34199297
tompson
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка результата выполнения процедуры
БД ASE 15.0 тестовая (или 12.5 рабочая)
Есть процедура следущего вида:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
 
create proc dbo.test_proc @user char( 8 ) as
SELECT
    Name, Date_log, Text_log
FROM
    RLS_USER_LOG
WHERE
    USL_USER = @user		
go

1 Процедура возвращает датасет - как отсортировать этот результат например по полю Name средствами SQL ? (Текст процедуры изменять нельзя)
2 Данная процедура изпользуется для построения отчета (Jasper). В запросе для отчета я просто пишу exec test_proc 'user_name', если тоже самое написать и выполнить iSql то пишет что проигнорирован результат выполнения процедуры. Как написать правильно что бы результат был показан в таблице внизу?
...
Рейтинг: 0 / 0
14.12.2006, 17:47
    #34200990
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка результата выполнения процедуры
1 Процедура возвращает датасет - как отсортировать этот результат например по полю Name средствами SQL ? (Текст процедуры изменять нельзя)

Добавить в процедуру в запрос ORDER BY в конце. Не меняя текст процедуры это сделать почти невозможно. Т.е. я бы не рекомендовал этот способ - это прокси-таблицы на процедуры, конфиргурирование и администрирование CIS и loopback-сервера, потеря производительности и прочие прелести. Это все тут неоднократно обсасывалось под темами типа "выбрать данные из результата хранимой процедуры".

Если надо, лучше это сделать на клиенте, отчетники напр. запросто тебе отсортируют это на клиенте.

2 Данная процедура изпользуется для построения отчета (Jasper). В запросе для отчета я просто пишу exec test_proc 'user_name', если тоже самое написать и выполнить iSql то пишет что проигнорирован результат выполнения процедуры. Как написать правильно что бы результат был показан в таблице внизу?

ЧЕГО ???? какой результат проигнорирован ? Детали пожалуйста, быть такого не может.
...
Рейтинг: 0 / 0
14.12.2006, 23:48
    #34201505
A.K.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка результата выполнения процедуры
а в ASA 8.0.3 тоже нельзя делать запрос из рекордсета, сформированного хранимой процедурой?
...
Рейтинг: 0 / 0
15.12.2006, 00:06
    #34201518
A.K.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка результата выполнения процедуры
м-да, насколько я понял из материалов форума, такое есть только начиная с девятки?
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
15.12.2006, 13:47
    #34203021
Dim2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка результата выполнения процедуры
A.K.м-да, насколько я понял из материалов форума, такое есть только начиная с девятки?
Если я правильно понял вопрос, то да. Во всём, что меньше, придётся извращаться.
...
Рейтинг: 0 / 0
15.12.2006, 14:40
    #34203278
A.K.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка результата выполнения процедуры
и как попроще извратиться?
допустим, нужно сделать выборку из рекодсета, возвращаемого стандартной процедурой.
т.е. что-то вроде:
Код: plaintext
select ... from (exec sa_xxxx) where ....
или например
Код: plaintext
select ... from (exec sa_xxxx) a join (exec sa_yyyy) b on (...) where ....
...
Рейтинг: 0 / 0
15.12.2006, 15:16
    #34203428
Dim2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка результата выполнения процедуры
A.K. wrote:

> и как попроще извратиться?

С ходу в голову не приходит ничего лучше, чем открыть курсор по
процедуре, и в цикле запихнуть то, что выдаст процедура, во временную
таблицу...
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
15.12.2006, 19:37
    #34204392
tompson
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка результата выполнения процедуры
MasterZiv
ЧЕГО ???? какой результат проигнорирован ? Детали пожалуйста, быть такого не может.

Да, iSql показывает все правильно, а вот Aqua Data Studio подкачала - это она пишет что результат проигнорирован. Приношу свои извинения :(
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Сортировка результата выполнения процедуры / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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