Zum Inhalt springen

Select die USER zurueckgibt die NUR die ROLE CONNECT haben


orac

Empfohlene Beiträge

Hallo,

ich will eine Select-Anweisung schreiben die alle user einer Oracle 9i datenbank zurueckgibt die NUR eine Rolle(ROLE) haben und zwar die "CONNECT" Rolle.

Informationen ueber Rollen und Benutzern gekomme ich aus:

SQL> desc DBA_ROLE_PRIVS

Naam

------------------------

GRANTEE

GRANTED_ROLE

ADMIN_OPTION

DEFAULT_ROLE

Ich hab mal probiert, aber hiermit bekomme ich nur die User die ueberhaupt nur eine Rolle haben und nicht speziell NUR die Rolle CONNECT...

SQL> select grantee, count(*) from DBA_ROLE_PRIVS group by GRANTEE having count(*) <2;

Kann mir hier jemand helfen diese Abfrage auszubreiten oder eine andere Abfrage mailen womit ich das gewuenschte Ergebnis erhalte?

Schon mal vielen Dank.

Gruesse

Link zu diesem Kommentar
Auf anderen Seiten teilen

Vielleicht hast jemand noch ein Tip um diese Abfrage auszubreiten. In meinem Ergebnis sind Users die ein ACCOUNT_STATUS = EXPIRED & LOCKED , ich moechte jedoch nur die User die ACCOUNT_STATUS =ONLINE haben. Und dies alles kombiniert mit der vorigen Query.

Das heisst, ich muesste die Abfrage ueber 2 Tabellen/views machen. Kann mir jemand sagen wie das geht?

SQL> desc DBA_ROLE_PRIVS

Naam

------------------------

GRANTEE

GRANTED_ROLE

ADMIN_OPTION

DEFAULT_ROLE

SQL> desc dba_users

Naam

-------------------------------

USERNAME

USER_ID

PASSWORD

ACCOUNT_STATUS

LOCK_DATE

EXPIRY_DATE

DEFAULT_TABLESPACE

TEMPORARY_TABLESPACE

CREATED

PROFILE

INITIAL_RSRC_CONSUMER_GROUP

EXTERNAL_NAME

Query die ausgebreitet werden soll aus der vorigen Antwort:

SELECT grantee, count(*) FROM DBA_ROLE_PRIVS WHERE GRANTED_ROLE = 'CONNECT' GROUP BY GRANTEE HAVING count(*) <2;

Schon mal Danke fuer die Hilfe!

Link zu diesem Kommentar
Auf anderen Seiten teilen

username und grantee

Also unter der Annahme das im Grantee auch der Username hinterlegt ist müsste

folgende Abfrage funktionieren


SELECT grantee, count(*)

FROM DBA_ROLE_PRIVS,dba_users

WHERE username = grantee

AND granted_role = 'CONNECT'

AND ACCOUNT_STATUS ='ONLINE'

GROUP BY GRANTEE 

HAVING count(*) <2;

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...