powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вызов констант
3 сообщений из 3, страница 1 из 1
Вызов констант
    #39635825
Motorin Sergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет.
Есть таблица MYCONST с полями ID,NAME, оба поля уникальны, в ней лежат справочные данные(больше миллиона строк)
ID; NAME
1; Вася
2; Петя
3; Коля
....
Есть пакет MYPACKAGE, в котором есть функция ConstId(pNAME varchar2), по имени(NAME) определяющая ID записи из таблицы MYCONST.
В пакете MYPACKAGE есть константы, которые декларируются так:

c_VASJA constant number := ConstId('Вася');
c_PETJA constant number := ConstId('Петя');
c_KOLJA constant number := ConstId('Коля');

В пакете MYPACKAGE есть функции которые вызывают эти константы по именам в курсорах:
for mycur in
(
select * from employee where empid in (c_VASJA,c_KOLJA)
) loop ... end loop;

Вопрос - в момент исполнения курсора константы уже существуют значениями и обращения к таблице MYCONST не происходит? Или для каждой константы, в момент выполнения курсора, вызывается функция ConstId, делающая запрос к таблице MYCONST?
По другому - в какой момент происходит иницализация константы заданной функцией и константа получает значение, в момент компилляции пакета MYPACKAGE или в момент обращения к константе из процедуры/функици пакета?
Не бейте, может разбирался кто-то?
...
Рейтинг: 0 / 0
Вызов констант
    #39635839
Фотография шК0ДЕР
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Motorin SergeyВопрос - в момент исполнения курсора константы уже существуют значениями и обращения к таблице MYCONST не происходит?
А проверить самому?
Запусти в отладке одну из функций и пошагово просмотри, инициализирована ли константа или нет :)
...
Рейтинг: 0 / 0
Вызов констант
    #39635874
Motorin Sergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос закрыт))
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вызов констант
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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