Re: CDB_USERS

  • From: "Charlotte Hammond" <dmarc-noreply@xxxxxxxxxxxxx> (Redacted sender "charlottejanehammond" for DMARC)
  • To: "fuzzy.graybeard@xxxxxxxxx" <fuzzy.graybeard@xxxxxxxxx>, "oracle-l@xxxxxxxxxxxxx" <oracle-l@xxxxxxxxxxxxx>
  • Date: Fri, 19 Feb 2016 17:40:18 +0000 (UTC)

 Thanks everyone for your suggestions.
This morning I ran exactly the same script again and saw 44 rows returned for 
the last query instead of "no rows selected".  This is what I'd expect to see.
The database is just a personal learning sandpit so nobody else would have made 
any changes since yesterday.  So I'm at a bit of a loss why it is working now.  
 I'll try to see if I can figure out a way to reproduce the issue.
Charlotte


    On Thursday, February 18, 2016 10:37 PM, Hans Forbrich 
<fuzzy.graybeard@xxxxxxxxx> wrote:
 

  Please try "SELECT CON_ID from CDB_USERS;"  then try "SELECT USERNAME FROM 
(SELECT * FROM CDB_USERS) WHERE CON_ID=4;"
 
 As an aside, the views will usually only retrieve rows from PDBs that are 
open.  That is the case here, and I suspect that you are facing one of the 
'opportunities for improvement' that are to be found in the CONTAINERS table 
function as it seems to work correctly in 12.1.0.2 ...
 
 /Hans
 
 On 18/02/2016 11:35 AM, Charlotte Hammond (Redacted sender 
charlottejanehammond for DMARC) wrote:
  
   Hi All, 
  I'm just doing a bit of self study on CDBs (no current plans to use this for 
real) and can't understand why, when connected to CDB$ROOT as SYS I can count 
the users in CDB_USERS but can't select them.  I'm not sure if this is a bug 
or, being new to all this, I'm just not understanding the concept properly.   
I'd appreciate any enlightenment!  (Please see my sqlplus spool below) 
  Many thanks, Charlotte 
    SQL> select version from v$instance;       VERSION   -----------------   
12.1.0.1.0       SQL> show user   USER is "SYS"   SQL> show con_id       CON_ID 
  ------------------------------   1       SQL> select con_id,open_mode from 
v$pdbs;           CON_ID OPEN_MODE   ---------- ----------            2 READ 
ONLY            3 READ WRITE            4 READ WRITE            5 READ WRITE    
        6 READ WRITE       SQL> select count(*) from cdb_users where con_id=4;  
       COUNT(*)   ----------           44       SQL> select * from cdb_users 
where con_id=4;       no rows selected         
 
 

  

Other related posts: