CftClub.ru
Клуб специалистов ЦФТ-Банк

К какой базе законнектился
На страницу 1, 2  След.
 
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих
Предыдущая тема :: Следующая тема  
Автор Сообщение
Gobur
Профи
Неподтвержденный


Вступление в Клуб: 06.11.2012
СообщениеЧт Ноя 29, 2012 06:12   К какой базе законнектился Ответить с цитатой
Полезность: Нет оценки
В ИБСО можно получить по пользователю к какой базе он законнектился стандартными функциями словаря? ip-сервера или имя из TNS? Спасибо
beffz
Участник
Неподтвержденный


Вступление в Клуб: 15.10.2012
СообщениеЧт Ноя 29, 2012 08:44    Ответить с цитатой
Полезность: 1
Можно так:

Код:
select a(a.instance_name) in v$instance%rowtype
    into instance_name;
Alexsey
Эксперт
МЕГА БАНК


Вступление в Клуб: 06.09.2007
СообщениеЧт Ноя 29, 2012 09:38    Ответить с цитатой
Полезность: Нет оценки
Достаточно поднять глаза на заголовок окна. Там показано какой пользователь в какую базу вошел в формате "[Пользователь@имя базы]", а так же в правом нижнем углу в навигаторе. Это если не программноSmile
_________________
всегда есть как минимум 2 выхода
Gobur
Профи
Неподтвержденный


Вступление в Клуб: 06.11.2012
СообщениеЧт Ноя 29, 2012 10:17    Ответить с цитатой
Полезность: Нет оценки
beffz пишет:
Можно так:

Код:
select a(a.instance_name) in v$instance%rowtype
    into instance_name;


это немного не то - это инстанс, он может ваще одинаковый у теста быть и у рабочей.
Volod
Профи
Неподтвержденный


Вступление в Клуб: 19.09.2007
СообщениеЧт Ноя 29, 2012 10:58    Ответить с цитатой
Полезность: Нет оценки
Можно в Системные флаги добавить параметр MAIN_SYSTEM и устанавливать руками.
vtar
Эксперт
Неподтвержденный


Вступление в Клуб: 20.03.2009
СообщениеЧт Ноя 29, 2012 11:18    Ответить с цитатой
Полезность: Нет оценки
Код:

function is_it_work_db return boolean
is
   res boolean;
   name_db      varchar2;
   uname_db   varchar2;
begin
   -- begin pl/sql
   select UPPER(name), UPPER(db_unique_name) into name_db,uname_db from v$database;
   -- end pl/sql
   return nvl(name_db=uname_db and name_db = 'WORK', false);
end;
Gobur
Профи
Неподтвержденный


Вступление в Клуб: 06.11.2012
СообщениеЧт Ноя 29, 2012 21:07    Ответить с цитатой
Полезность: Нет оценки
Alexsey пишет:
Достаточно поднять глаза на заголовок окна. Там показано какой пользователь в какую базу вошел в формате "[Пользователь@имя базы]", а так же в правом нижнем углу в навигаторе. Это если не программноSmile


ну там и в статус баре пишет строку коннект - было б прикольно узнать хранится она в переменной какой или тупо в статус бар кинули и все.

З.Ы. Очень нужно для подрихтовки саморегулир. системы доступа операционистов
devor
Профи
Неподтвержденный


Вступление в Клуб: 13.02.2012
СообщениеПт Ноя 30, 2012 08:53    Ответить с цитатой
Полезность: Нет оценки
Gobur пишет:


ну там и в статус баре пишет строку коннект - было б прикольно узнать хранится она в переменной какой или тупо в статус бар кинули и все.

З.Ы. Очень нужно для подрихтовки саморегулир. системы доступа операционистов


Постом выше уже vtar указал нужный источник
Код:

select a(a.db_unique_name) in v$database%rowtype
    into instance_name;
Gobur
Профи
Неподтвержденный


Вступление в Клуб: 06.11.2012
СообщениеПт Ноя 30, 2012 09:23    Ответить с цитатой
Полезность: Нет оценки
devor пишет:
Gobur пишет:


ну там и в статус баре пишет строку коннект - было б прикольно узнать хранится она в переменной какой или тупо в статус бар кинули и все.

З.Ы. Очень нужно для подрихтовки саморегулир. системы доступа операционистов


Постом выше уже vtar указал нужный источник
Код:

select a(a.db_unique_name) in v$database%rowtype
    into instance_name;


Это инстнас - он у нас везде одинаковый на всех базах.. А мне надо строку из ТНС_НАМЕС, которая потом в статус баре при коннекте фигурирует.
vtar
Эксперт
Неподтвержденный


Вступление в Клуб: 20.03.2009
СообщениеПт Ноя 30, 2012 10:06    Ответить с цитатой
Полезность: Нет оценки
Gobur,
можете протестить предложенный код функции на тестовой конфигурации ? вместо WORK естественно , нужно указать имя рабочей БД
devor
Профи
Неподтвержденный


Вступление в Клуб: 13.02.2012
СообщениеПт Ноя 30, 2012 11:07    Ответить с цитатой
Полезность: Нет оценки
Gobur пишет:

Это инстнас - он у нас везде одинаковый на всех базах.. А мне надо строку из ТНС_НАМЕС, которая потом в статус баре при коннекте фигурирует.

Это не инстанс, а SID.
Переменную просто назвал как попало.

tns_names - это вообще локальный клиентский алиас, его можно только с клиента в клиент-скрипте считать.
Gobur
Профи
Неподтвержденный


Вступление в Клуб: 06.11.2012
СообщениеПт Ноя 30, 2012 17:29    Ответить с цитатой
Полезность: Нет оценки
devor пишет:
Gobur пишет:

Это инстнас - он у нас везде одинаковый на всех базах.. А мне надо строку из ТНС_НАМЕС, которая потом в статус баре при коннекте фигурирует.

Это не инстанс, а SID.
Переменную просто назвал как попало.

tns_names - это вообще локальный клиентский алиас, его можно только с клиента в клиент-скрипте считать.


Да, мне нужен именно локальный клиентский алиас. Конечно можно, просто если он в статус баре отображается - думал и в ИБСО это где то при коннекте сохраняется. Хотел попроще)
Gobur
Профи
Неподтвержденный


Вступление в Клуб: 06.11.2012
СообщениеПт Ноя 30, 2012 17:30    Ответить с цитатой
Полезность: Нет оценки
vtar пишет:
Gobur,
можете протестить предложенный код функции на тестовой конфигурации ? вместо WORK естественно , нужно указать имя рабочей БД


Да не, это будет работать - но мне вот немного другое надо..Я не хочу проверять на какой я базе (рабочей или тестовой), а что у юзера в оракловом клиенте - думал в ИБСО это просто можно взять, тем более в статус баре выводится)
Alexsey
Эксперт
МЕГА БАНК


Вступление в Клуб: 06.09.2007
СообщениеВс Dec 02, 2012 11:15    Ответить с цитатой
Полезность: Нет оценки
А если у тебя технология 3L как ты будешь это вычитывать? С Сервера приложений?
_________________
всегда есть как минимум 2 выхода
Gobur
Профи
Неподтвержденный


Вступление в Клуб: 06.11.2012
СообщениеВс Dec 02, 2012 18:18    Ответить с цитатой
Полезность: Нет оценки
Alexsey пишет:
А если у тебя технология 3L как ты будешь это вычитывать? С Сервера приложений?


у меня нет технологии 3L ), я не пишу универсальную операцию на все случаи жизни. Когда у нашего банка появятся деньги на это (а это вряд ли) будем думать
Показать сообщения:   
Ответить на тему    Клуб специалистов ЦФТ-Банк (IBSO) -> Уроки ЦФТ-Банк для начинающих Часовой пояс: GMT + 3
На страницу 1, 2  След.
Страница 1 из 2

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Рейтинг@Mail.ru