oracle 怎么授权用户 只能在指定的表空间中 创建表
发布网友
发布时间:2022-04-08 03:03
我来回答
共3个回答
热心网友
时间:2022-04-08 04:32
可以通过alter方法给用户指定表空间的,之后创建表不需要指定,会进行默认的表空间存储的。
sql:ALTER USER 用户名 IDENTIFIED BY 口令 DEFAULT TABLESPACE 表空间;
解释:上述语句就是给“用户名”用户指定了默认的表空间“表空间”,之后所有的表都会默认进行存储。
备注:一般表空间都是设置默认自动扩展的,所以一般不用担心存储超出最大存储的问题的。
热心网友
时间:2022-04-08 05:50
如果一个账号刚刚创建,他是没有任何权限的,你首先要赋予其登陆的权利grant connect to a,
以及赋予其资源,
这样他就可以在他对应的表空间下操作了,
但是他如果不是用sys账号登陆,他是不可能在其他表空间创建表
热心网友
时间:2022-04-08 07:25
首先查看用户所拥用的权限,把不相关的权限收回,再查看用户对表空间的权限
一、查看用户的权限
1.查看当前用户所拥有的系统权限
select * from session_privs;
2.查看数据库内的所有角色
selec * from dba_roles;
3.查看数据库所支持的最大角色数
SQL> show parameter role
max_enabled_roles integer 150 --该值可以修改
os_roles boolean FALSE
remote_os_roles boolean FALSE
4.查看当前用户所拥有的角色
select * from session_roles;
5.查看角色的嵌套关系和所授予的用户
select * from dba_role_privs order by 1;
6.其他查看角色和权限的命令
select * from role_sys_privs;
select * from dba_sys_privs;
二、查看用户表空间的权限
SQL> select * from user_ts_quotas;
如果可以在其它表空间上操作,修改用户;