The following statement opens a database in read-only mode:
ALTER DATABASE OPEN READ ONLY;
You can also open a database in read-write mode as follows:
ALTER DATABASE OPEN READ WRITE;
However, read-write is the default mode.
If you want to co-exists both read-only users with read-write users on a same database, you can control it at tablespace level (as mentioned above) or at user definition level.
You can limit the quota of a user to a certain tablespace to 0 (zero).
ALTER USER scott QUOTA 0 on HR;
Robbie
"The rule is, not to besiege walled cities if it can possibly be avoided" -- Art of War