1

コンソールで sql*plus を使用して、Oracle 10g でデータベースの特定のユーザー名を表示するにはどうすればよいですか? 次の表のリンク列を探していますv$database, all_users, .dba_usersv$session

4

3 に答える 3

1

データベースで定義されているユーザーを照会するには、all_usersビューを使用できます。たとえば、aまたはで始まるすべてのユーザーを選択するAには、

SELECT * 
FROM all_users 
WHERE NLS_UPPER(username) LIKE 'A%';

特定のユーザーの現在のセッションを照会するには、v$sessionビューを使用できます。たとえば、aまたはで始まるユーザーに対して確立されている現在のすべてのセッションを選択するにはA

SELECT * 
FROM v$session
WHERE NLS_UPPER(username) LIKE 'A%';
于 2012-12-04T16:06:49.667 に答える
0

V$SESSION と DBA_USERS をリンクするには、両方のビューの「Usernanme」列を使用します。ユーザーセッションの詳細を返します。

V.USERNAME=D.USERNAME; v$session v、dba_users d から D.USERNAME、D.USER_ID、V.SID、V.STATUS を選択します。

バックグラウンド プロセス用に作成されたセッションの詳細も必要な場合は、V$SESSION の「User#」と DBA_USERS の「User_ID」で結合します。

V.USER#=D.USER_ID; v$session v、dba_users d から D.USERNAME、D.USER_ID、V.SID、V.STATUS を選択します。

于 2012-12-05T04:04:04.743 に答える
0
select username from all_users;

or

select username from all_users where ...;

ビューには、ALL_、DBA_、および USER_ の 3 つの異なるセットがあります。

ALL_ビューは、現在のユーザーがアクセスできるすべての情報を表示します。つまり、ユーザーが権限を持つすべてのshcemaを表示できます。DBA_ビューは、データベース全体の情報を表示し、管理者のみを対象としています。次に、USER_ビューは現在のユーザーのスキーマから情報を表示します。

ALL_USERS が必要なようですね

于 2012-12-04T16:09:09.020 に答える