![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
подскажите в чём тут ошибка? [D6, Oracle]
Nina © (2002-08-27 15:14:00)create or replace procedure kol_user
(kol out number)
as begin
select COUNT(USERNAME)
into kol
from v$session
WHERE STATUS ="ACTIVE"
AND USERNAME IS NOT NULL;
end;
Black Cat (2002-08-29 09:54:00) [1]
> Nina
Если, как говоришь, есть права и проходит
select * from v$session,
то грантировать ничего не надо, все должно пройти.
См. почту.
dimis (2002-08-29 08:33:00) [2]>Nina
не важно как это делать , через процедуру или нет
для такого запроса твой ораколовский пользователь должен иметь грант на таблицу SYS.V_$SESSION.
этот грант должен дать тебе админ сервера.
команды были приведены выше.
Если они отказываются примени административные меры и переложи ответственность на начальство
Nina (2002-08-29 07:04:00) [3]Black Cat
тогда расскажите мне как сделать по другому не через процедуру?
Nina (2002-08-29 07:04:00) [4]Black Cat
тогда расскажите мне как сделать по доугму не через процедуру?
dimis (2002-08-28 14:39:00) [5]
> Black Cat
:) угу
в понедельник
Black Cat (2002-08-28 14:35:00) [6]
> dimis
С утра, пораньше :-)
dimis (2002-08-28 14:33:00) [7]надо ломать Oracle
самый верный кряк - это бутылка холодного пива
Black Cat (2002-08-28 14:32:00) [8]Дело не в процедуре, а в доступе к SYS.V_$SESSION.
Black Cat (2002-08-28 14:29:00) [9]пасворд не дают ;-)? Ну пусть администратор выполнит строчку с grant
Nina (2002-08-28 14:26:00) [10]и что можно сделать?? может без процедуры??
как?
напрямую ?? подскажите!!
Nina (2002-08-28 14:23:00) [11]sys мне не дают коннектиться!
воты!!! весело!!!
Black Cat (2002-08-28 13:28:00) [12]
> Nina
Давайте так: готовый скрипт
-- коннектимся как SYS
connect sys/ PASSW_FOR_SYS@ SERVER;
-- грантируем права на селект из вьюшки, принадлежащей SYS
GRANT SELECT ON SYS.V_$SESSION TO MY_SCHEMA;
-- коннектимся СВОИМ ЮЗЕРОМ
connect MY_SCHEMA/ PASSW_FOR_MY_SCHEMA@ SERVER;
-- создаем процедуру
create or replace procedure kol_user
(kol out number)
as begin
select COUNT(USERNAME)
into kol
from v$session
WHERE STATUS ="ACTIVE"
AND USERNAME IS NOT NULL;
end;
-- все
commit;
Все, что вам надо - заменить выделенное жирным на свои. Разумеется, скрипт проверен
Nina (2002-08-28 13:01:00) [13]Black cat
может вы и правы в этом ошибка
но я не могу понять как сделать!
объясните по подробнее плз!
petr_v_a (2002-08-27 16:17:00) [14]а че за ошибка-то, Nina??? ошибки-то разные бывают
Black Cat (2002-08-27 16:04:00) [15]
> Nina
Входишь как SYS, выполняешь:
GRANT SELECT ON "SYS"."V_$SESSION" TO "MY_SCHEMA", где
"MY_SCHEMA" - имя твоей схемы (юзера) - это и есть права,
потом входишь под именем своего юзера и создаешь процедуру
Nina (2002-08-27 16:00:00) [16]не помогает!
может в правах проблема?
dimis (2002-08-27 15:42:00) [17]from sys.v$session
Black Cat (2002-08-27 15:38:00) [18]Если в другой схеме, то перед созданием процедуры (юзером SYS):
GRANT SELECT ON "SYS"."V_$SESSION" TO "MY_SCHEMA"
Black Cat (2002-08-27 15:20:00) [19]если создавать в схеме SYS, то ошибки нет