Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.01.24;
Скачать: [xml.tar.bz2];

Вниз

Не понятное с 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.003 c
14-75670
Dimka Maslov
2001-11-30 15:54
2002.01.24
No comments


14-75649
Потерянный
2001-11-27 15:28
2002.01.24
Попробую здесь


3-75506
sasa_ch
2001-12-20 13:02
2002.01.24
как вытащить из таблицы?


3-75466
Андрей1
2001-12-19 11:25
2002.01.24
Для работы в Oracle существует PL/SQL Developer. Существует ли чё-то подобное для MS SQL Server?


3-75482
Dim
2001-12-17 11:57
2002.01.24
Почему не правильно работает RecordCount?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский