| Предыдущая тема :: Следующая тема | 
	
	
		| Автор | Сообщение | 
	
		| 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    |   |  
				| Полезность: Нет оценки 
 |  
				| Достаточно поднять глаза на заголовок окна. Там показано какой пользователь в какую базу вошел в формате "[Пользователь@имя базы]", а так же в правом нижнем углу в навигаторе. Это если не программно  _________________
 всегда есть как минимум 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 пишет: |  	  | Достаточно поднять глаза на заголовок окна. Там показано какой пользователь в какую базу вошел в формате "[Пользователь@имя базы]", а так же в правом нижнем углу в навигаторе. Это если не программно  | 
 
 ну там и в статус баре пишет строку коннект - было б прикольно узнать хранится она в переменной какой или тупо в статус бар кинули и все.
 
 З.Ы. Очень нужно для подрихтовки саморегулир. системы доступа операционистов
 |  | 
	
		|  | 
	
		| 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
 
 | 
			
				|  Вс Дек 02, 2012 11:15    |   |  
				| Полезность: Нет оценки 
 |  
				| А если у тебя технология 3L как ты будешь это вычитывать? С Сервера приложений? _________________
 всегда есть как минимум 2 выхода
 |  | 
	
		|  | 
	
		| Gobur Профи
 
 
 Вступление в Клуб: 06.11.2012
 
 | 
			
				|  Вс Дек 02, 2012 18:18    |   |  
				| Полезность: Нет оценки 
 |  
				|  	  | Alexsey пишет: |  	  | А если у тебя технология 3L как ты будешь это вычитывать? С Сервера приложений? | 
 
 у меня нет технологии 3L ), я не пишу универсальную операцию на все случаи жизни. Когда у нашего банка появятся деньги на это (а это вряд ли) будем думать
 |  | 
	
		|  | 
	
		|  |