Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Озвучивание кодировки ряда полей  [new]
romm155
Guest
Есть таблица
kod number
names varchar2
f1 number
f2 number
f3 number
...
f15 number

значения в полях f это код по справочнику, который необходимо озвучить для клиентского ПО по справочнику код,наименование. делаю следующим образом

CREATE OR REPLACE PACKAGE PTEST
  IS

  type TP_Mode_Data is record (names varchar2(20), fnum number);
  type TB_Mode_Data is table of TP_Mode_Data index by binary_integer;
  TMode_List TB_Mode_Data;

  function get_look_text(acode in number) RETURN varchar2;
END; 


CREATE OR REPLACE PACKAGE BODY PTEST
IS
    function get_look_text(acode in number) RETURN varchar2 is
      result varchar2(20);
    begin
      if TMode_List.count = 0 then
        for i in (select * from nci) loop
            RMode_List.names := i.names;
            TMode_List(i.key):= RMode_List;
        end loop;
    
      end if;
      begin
        result:=TMode_List(to_number(acode)).flook||s;
      exception when NO_DATA_FOUND then
        result:='';
      end;
      return result;
    end;
end;

использую get_look_text в виде, сбор данных из справочника происходит только один раз. Вопрос в следующем: является ли такой подход рациональным? кто какие способы использует для таких задач?
15 фев 09, 19:06    [6821785]     Ответить | Цитировать Сообщить модератору
 Re: Озвучивание кодировки ряда полей  [new]
Elic
Member

Откуда:
Сообщений: 29979
romm155
является ли такой подход рациональным?
Вполне, если спарвочник достаточно статичный. Если нет, то стоит подумать о TTL.
16 фев 09, 09:03    [6822473]     Ответить | Цитировать Сообщить модератору
 Re: Озвучивание кодировки ряда полей  [new]
romm155
Guest
Извиняюсь,но что такое TTL?
16 фев 09, 09:51    [6822637]     Ответить | Цитировать Сообщить модератору
 Re: Озвучивание кодировки ряда полей  [new]
stax..
Guest
romm155

использую get_look_text в виде, сбор данных из справочника происходит только один раз. Вопрос в следующем: является ли такой подход рациональным? кто какие способы использует для таких задач?


не вроблюсь
кто из S?
result:=TMode_List(to_number(acode)).flook||s;

зи
я так понимаю для каждой сессии будет своя копия nci,
и если сессий много то ...

не знаю, мож луче вюшку сделать
......
stax
16 фев 09, 10:24    [6822819]     Ответить | Цитировать Сообщить модератору
 Re: Озвучивание кодировки ряда полей  [new]
Elic
Member

Откуда:
Сообщений: 29979
romm155
Извиняюсь,но что такое TTL?
UTFG :)
16 фев 09, 10:29    [6822836]     Ответить | Цитировать Сообщить модератору
 Re: Озвучивание кодировки ряда полей  [new]
romm155
Guest
stax..

не вроблюсь
кто из S?
result:=TMode_List(to_number(acode)).flook||s;


опечатка, конечно result:=TMode_List(to_number(acode)).names;
в оригинальном коде, структура TMode_List несколько шире, но тут был важен сам принцип, подход
16 фев 09, 11:17    [6823173]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить