powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / как можно узнать есть ли у пользователя права ? .....
6 сообщений из 6, страница 1 из 1
как можно узнать есть ли у пользователя права ? .....
    #32189628
DimonM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет всем!

помогите советом, как можно простым sql-запросом у знать какие имеються у пользователя "Vasya" права в базе "test123" ???

честно говоря, мне нужно просто узнать создал ли (конкретно перечисленные)права у юзера на удаленной базе мой скрипт или нет...


заранее спасибо!
...
Рейтинг: 0 / 0
как можно узнать есть ли у пользователя права ? .....
    #32189690
Фотография SY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> мне нужно просто узнать создал ли (конкретно перечисленные)права у юзера на удаленной базе мой скрипт или нет...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
SELECT  DECODE(
               COUNT(*),
               N,'создал',
                 'не создал'
              )
  FROM  DBA_SYS_PRIVS@DB-LINK
  WHERE GRANTEE = 'VASYA'
    AND PRIVILEGE IN (конкретно перечисленные права)
/


where N number of конкретно перечисленныx прав.

SY
...
Рейтинг: 0 / 0
как можно узнать есть ли у пользователя права ? .....
    #32189708
Фотография SY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Just want to make sure конкретно перечисленные права are not object privileges. Otherwise you would have to check DBA_TAB_PRIVS:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
SELECT  DECODE(
               COUNT(*),
               N,'создал',
                 'не создал'
              )
  FROM  DBA_SYS_PRIVS@DB-LINK
  WHERE GRANTEE = 'VASYA'
    AND (OWNER,TABLE,PRIVILEGE) IN (конкретно перечисленные объекты и права)
/


SY
...
Рейтинг: 0 / 0
как можно узнать есть ли у пользователя права ? .....
    #32189720
Фотография SY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oops, it will not work that way. It should be:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
SELECT  DECODE(
               COUNT(*),
                1 ,'создал',
                 'не создал'
              )
  FROM  DBA_SYS_PRIVS@DB-LINK
  WHERE GRANTEE = 'VASYA'
    AND (OWNER,TABLE_NAME,PRIVILEGE) IN (SELECT владелец объекта, объект, право на объект FROM DUAL)
/


for each object/privilege combination.

SY
...
Рейтинг: 0 / 0
как можно узнать есть ли у пользователя права ? .....
    #32189722
Фотография SY
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Messed up again. Should be FROM DBA_TAB_PRIVS@DB-LINK, not FROM DBA_SYS_PRIVS@DB-LINK.

SY
...
Рейтинг: 0 / 0
как можно узнать есть ли у пользователя права ? .....
    #32189951
Violina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to SY

Интересный случай с

Код: plaintext
(OWNER,TABLE,PRIVILEGE) IN (конкретно перечисленные объекты и права)


и

Код: plaintext
(OWNER,TABLE,PRIVILEGE) IN (SELECT владелец объекта, объект, право на объект FROM DUAL)


поэкспериментировала с этим, теперь стало окончательно ясно про pairwise и non-pairwise comparison.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
SQL> select * from dual where ( 1 ,  2 ,  3 ) in ( 1 ,  2 ,  3 );
select * from dual where ( 1 ,  2 ,  3 ) in ( 1 ,  2 ,  3 )
                                      *
ERROR at line  1 :
ORA- 00920 : invalid relational operator


SQL> select * from dual where ( 1 ,  2 ,  3 ) in (select  1 ,  2 ,  3  from dual);

D
-
X

SQL> select * from dual where ( 1 ,  2 ,  3 ) = ( 1 ,  2 ,  3 );
select * from dual where ( 1 ,  2 ,  3 ) = ( 1 ,  2 ,  3 )
                                     *
ERROR at line  1 :
ORA- 00920 : invalid relational operator


SQL> select * from dual where ( 1 ,  2 ,  3 ) = (select  1 ,  2 ,  3  from dual);

D
-
X
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / как можно узнать есть ли у пользователя права ? .....
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]