Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.01.24;
Скачать: CL | DM;

Вниз

Не понятное с view V_$Session   Найти похожие ветки 

 
kat ©   (2001-12-21 14:30) [0]

У меня вот какая проблема, помогите пожалуйста
Ораковскаю функция
Function Pr return varchar2 is
vv varchar2(100) default "";
cursor a is
select view_name from ALL_VIEWS
WHERE VIEW_NAME = "V_$SESSION";
begin
open a;
fetch a into vv;
close a;
return vv;
end Pr;
вызываю функцию в дельфе - showmessage(OraclePackage.CallStringFunction("pr",[]))И мне показывается пустое ShowMessage;
Пишу в TOracleDataSet
select view_name from ALL_VIEWS
WHERE VIEW_NAME = "V_$SESSION";
И мне выдается строчка
Почему так получается? Если вместо V_$Session написать, например, ALL_CATALOG, то все работает, а как только написано что-то с $ в названии - проблема. Что означает $ в названии?


 
petr_v_a ©   (2001-12-21 15:19) [1]

А владелец ф-ции пользователь, под которым идет запрос в TOracleDataSet - одно то же лицо? процедура/ф-ция/пакет выполняются с правами их владельца, и ALL_VIEWS будет выдавать те же записи, что и owner`у объекта.
$ в названиии - признак т.н. Dynamic Perfomance View, то есть view, которое реально не занимает места в базе, а отображает стуктуры памяти экземпляра. Для V_$SESSION есть public synonym V$SESSION, лучше использовать его ( иначе надо обращаться sys.v_$session )


 
kat ©   (2001-12-21 15:51) [2]

Строчки
select view_name from ALL_VIEWS
WHERE VIEW_NAME = "V_$SESSION"
меняю на следующие
select USER || " " || TO_CHAR(count(*)) from SYS.ALL_VIEWS
И у меня получается, что User один и тот же везде, но
Выдается
VIC 572 - вызвать функцию из пакета
и
VIC 1394-сформировать запрос
Не видно кучу функций, не только с $ в названии. Почему?


 
petr_v_a ©   (2001-12-21 16:07) [3]

ф-ция user действительно выдает одно и тоже из SQL и PL/SQL - пользователя, под которым прозошел коннект, но контекст ALL_VIEWS меняется.
чтоб узнать владельца ф-ции, скажите
select OWNER,OBJECT_NAME,OBJECT_TYPE
from ALL_OBJECTS
where OBJECT_NAME= :название_Вашей_функции


 
kat ©   (2001-12-21 16:16) [4]

Функция сохранена в пакете, Owner этого пакета VIC


 
petr_v_a ©   (2001-12-21 16:47) [5]

Значит, 1394 - 572 объектов доступны VIC через роли


 
kat ©   (2001-12-21 16:53) [6]

А как посмотреть какую надо дать роль, чтобы видеть все view?


 
petr_v_a ©   (2001-12-21 16:57) [7]

а она будет видеть только прямо ( не через роль ) или через select/execute any разрешенные объекты



Страницы: 1 вся ветка

Текущий архив: 2002.01.24;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.009 c
7-75699
BigFoot
2001-10-12 12:24
2002.01.24
Опять сервисы !!!


3-75504
Алексей1
2001-12-21 00:39
2002.01.24
Добавляю запись с помощью SQL


1-75590
SergeyNew
2002-01-07 17:18
2002.01.24
ListView, не получается...


7-75706
Ghost666
2001-10-10 23:03
2002.01.24
Как поменять резкость(чувствительность) крысы в Win 9x


3-75477
Mike_
2001-12-19 16:55
2002.01.24
Ячейки в DBGrid