Вот предложение, которому вы можете (или не можете) следовать.
Как привилегированный пользователь (например, SYS), проверьте табличные пространства, доступные в вашей базе данных.Я использую 11g XE (Express Edition), который показывает следующее:
SQL> show user
USER is "SYS"
SQL> select tablespace_name from dba_tablespaces;
TABLESPACE_NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP --> temporary
USERS --> my data
Теперь создайте пользователя:
SQL> create user mdp identified by pdm
2 default tablespace users
3 temporary tablespace temp
4 quota unlimited on users;
User created.
Давным-давно было два популярных предопределенныхроли с именами CONNECT и RESOURCE, которым были предоставлены некоторые из наиболее распространенных привилегий, поэтому люди просто любили предоставлять эти роли вновь созданным пользователям.
В настоящее время вам не следует делать это: grantтолько минимальный набор привилегий, которые могут понадобиться вашему пользователю.Первый - CREATE SESSION
;без этого ваш пользователь даже не сможет установить соединение.
SQL> grant create session to mdp;
Grant succeeded.
Затем вы захотите создать несколько таблиц, так что - предоставьте это:
SQL> grant create table to mdp;
Grant succeeded.
ОК, давайте подключимся как новый пользователь и сделаем что-то :
SQL> connect mdp/pdm@xe
Connected.
SQL> create table test (id number);
Table created.
SQL> insert into test id values (1);
1 row created.
SQL> drop table test;
Table dropped.
SQL>
Ницца;Я могу создавать таблицы, вставлять / обновлять / удалять / выбирать из них.Для начала этого вполне достаточно.Однако, когда выясняется, что вы хотите, например, создать представление, оно не будет работать, пока вы не предоставите ему эту привилегию:
SQL> create view v_dual as select * From dual;
create view v_dual as select * From dual
*
ERROR at line 1:
ORA-01031: insufficient privileges
SQL> connect sys@xe as sysdba
Enter password:
Connected.
SQL> grant create view to mdp;
Grant succeeded.
SQL> connect mdp/pdm@xe
Connected.
SQL> create view v_dual as select * From dual;
View created.
SQL>
и т. Д .;ничего не дарите только потому, что оно может вам понадобиться - дайте это , если и когда вам это нужно.Особенно обращайте внимание на системные привилегии, которые могут быть опасны, если вы не знаете, что делаете.