我试图在Oracle 12c中创建一个具有默认临时表空间和该表空间配额的用户。
我的发言是:
CREATE USER test_user2
IDENTIFIED BY "pass1234"
DEFAULT TABLESPACE TEMP_WORK_TS
QUOTA 100M ON TEMP_WORK_TS
QUOTA 100M ON TEMP_TEST_01
TEMPORARY TABLESPACE TEMP_TEST_01
PROFILE DEFAULT_PROFILE
ACCOUNT UNLOCK; 但我错了:
ORA-30041:无法在表空间上授予配额
Oracle文档显示为用户临时表空间分配的配额。
为什么我的陈述做同样的事情会导致错误?
发布于 2016-03-08 11:35:54
这看起来像是文档错误。该示例至少可以追溯到Oracle 9i文档,因此它可能早于真正的临时表空间。
您可以为每个用户分配任何表空间的表空间配额(临时表空间除外)。
ORA-30041:无法在表空间上授予配额 原因:用户试图在撤消或临时表空间上授予配额 操作:检查表空间名称并重新发出命令
据说从10g开始,但是9i版本只提到撤消表空间。行为似乎已经发生了变化,而这个例子还没有被更新以反映这一点。
所以您不能授予临时表空间配额。只需从create语句中省略它。无论如何,配额只对永久区段有意义,而且您也不知道优化器可能需要为用户可能运行的查询分配多少临时空间。
https://stackoverflow.com/questions/35865984
复制相似问题