Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / анализ процедуры db2expl / 6 сообщений из 6, страница 1 из 1
11.03.2008, 21:16
    #35183726
Kru
Kru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
анализ процедуры db2expl
Господа,
как мне выполнить db2expl если для анализируемой процедуры
запрос:

Код: plaintext
1.
2.
3.
select BNAME from SYSCAT.ROUTINEDEP 
where ROUTINESCHEMA = 'имя схемы'
and ROUTINENAME = 'имя процедуры'
возвращает null.

Нужно ли как-то ручками создавать пакаджи и привязывать к ним процедуры?

Разве пакадж и привязка к нему не должны создаваться автоматически при создании процедуры?

Заранее всем спасибо за отклик,
Андрей
...
Рейтинг: 0 / 0
12.03.2008, 09:48
    #35184190
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
анализ процедуры db2expl
А так:
Код: plaintext
1.
2.
3.
4.
5.
6.
select D.BNAME
from SYSCAT.ROUTINEDEP D
join SYSCAT.ROUTINES R ON D.ROUTINESCHEMA=R.ROUTINESCHEMA AND D.SPECIFICNAME=R.SPECIFICNAME
where R.ROUTINESCHEMA = 'имя схемы'
and R.ROUTINENAME = 'имя процедуры'
and D.BTYPE='K'
?
...
Рейтинг: 0 / 0
13.03.2008, 18:12
    #35189183
Kru
Kru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
анализ процедуры db2expl
Mark,
большое спасибо за отклик.
На сервере, что-то "подкрутили" и теперь оба запроса - Ваш и мой - возвращают ID пакаджа.


С уважением,
Андрей
...
Рейтинг: 0 / 0
19.03.2008, 20:19
    #35201815
Kru
Kru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
анализ процедуры db2expl
Опять столкнулся с тем,
что запрос
Код: plaintext
1.
2.
3.
select BNAME from SYSCAT.ROUTINEDEP 
where ROUTINESCHEMA = 'имя схемы'
and ROUTINENAME = 'имя процедуры'

не возвращает имя пакаджа.
Но! Запрос Марка
Код: plaintext
1.
2.
3.
4.
5.
6.
select D.BNAME
from SYSCAT.ROUTINEDEP D
join SYSCAT.ROUTINES R ON D.ROUTINESCHEMA=R.ROUTINESCHEMA AND D.SPECIFICNAME=R.SPECIFICNAME
where R.ROUTINESCHEMA = 'имя схемы'
and R.ROUTINENAME = 'имя процедуры'
and D.BTYPE='K'

возвращает!

Странно, почему такое может быть?

Заранее спасибо
...
Рейтинг: 0 / 0
20.03.2008, 10:24
    #35202554
Mark Barinstein
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
анализ процедуры db2expl
KruОпять столкнулся с тем,
что запрос
Код: plaintext
1.
2.
3.
select BNAME from SYSCAT.ROUTINEDEP 
where ROUTINESCHEMA = 'имя схемы'
and ROUTINENAME = 'имя процедуры'

не возвращает имя пакаджа.
Но! Запрос Марка
Код: plaintext
1.
2.
3.
4.
5.
6.
select D.BNAME
from SYSCAT.ROUTINEDEP D
join SYSCAT.ROUTINES R ON D.ROUTINESCHEMA=R.ROUTINESCHEMA AND D.SPECIFICNAME=R.SPECIFICNAME
where R.ROUTINESCHEMA = 'имя схемы'
and R.ROUTINENAME = 'имя процедуры'
and D.BTYPE='K'

возвращает!

Странно, почему такое может быть?

Заранее спасибоПотому, что в syscat.routinedep.routinename пишется specificname процедуры, а не routinename.
Т.е. если у вас routinename!=specificname, то ваш запрос ничего не вернет.
...
Рейтинг: 0 / 0
20.03.2008, 15:38
    #35203900
Kru
Kru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
анализ процедуры db2expl
[quot Потому, что в syscat.routinedep.routinename пишется specificname процедуры, а не routinename.
Т.е. если у вас routinename!=specificname, то ваш запрос ничего не вернет.[/quot]

Понял. Огромное спасибо.
...
Рейтинг: 0 / 0
Форумы / IBM DB2, WebSphere, IMS, U2 [игнор отключен] [закрыт для гостей] / анализ процедуры db2expl / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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