nerdexam
Oracle

1Z0-052 · Question #260

You execute the following set of commands to create a database user and to grant the system privileges in your production environment. SQL> CREATE USER user01 IDENTIFIED BY oracle DEFAULT TABLESPACE…

The correct answer is C. The user does not have quota on the TBS1 tablespace. ORA-01950 is raised when a user has the CREATE TABLE privilege but has not been granted any storage quota on the target tablespace, preventing the DDL from allocating space.

Administering User Security

Question

You execute the following set of commands to create a database user and to grant the system privileges in your production environment. SQL> CREATE USER user01 IDENTIFIED BY oracle DEFAULT TABLESPACE tbs1 TEMPORARY TABLESPACE temp PROFILE default / SQL> GRANT create session, create table TO user01; While executing the command to create a table, the user gets the following error message and the CREATE TABLE.. command fails. ERROR at line 1:

ORA-01950: no privileges on tablespace What could be the possible reason for this error message?

Options

  • AThe tablespace TBS1 is full.
  • BThe user is not the owner of the SYSTEM tablespace.
  • CThe user does not have quota on the TBS1 tablespace.
  • DThe user does not have sufficient system privileges to create table in the TBS1 tablespace.
  • EThe user does not have sufficient privileges to create table on the default permanent tablespace.

How the community answered

(62 responses)
  • A
    11% (7)
  • B
    6% (4)
  • C
    77% (48)
  • D
    2% (1)
  • E
    3% (2)

Why each option

ORA-01950 is raised when a user has the CREATE TABLE privilege but has not been granted any storage quota on the target tablespace, preventing the DDL from allocating space.

AThe tablespace TBS1 is full.

A full tablespace produces ORA-01653 (unable to extend table) rather than ORA-01950, which is strictly a quota privilege error unrelated to available free space.

BThe user is not the owner of the SYSTEM tablespace.

Ownership or access to the SYSTEM tablespace has no bearing on a user's ability to create objects in a separately assigned default tablespace like TBS1.

CThe user does not have quota on the TBS1 tablespace.Correct

In Oracle, the CREATE TABLE system privilege only authorizes the user to issue the DDL statement; it does not grant any physical storage allocation in a tablespace. A separate quota must be assigned via ALTER USER user01 QUOTA UNLIMITED ON tbs1 or a specific byte limit, and because no quota was granted during user creation, Oracle raises ORA-01950 when the user attempts to write an extent to TBS1. This is a common provisioning oversight that is distinct from system privilege management.

DThe user does not have sufficient system privileges to create table in the TBS1 tablespace.

The CREATE TABLE system privilege was explicitly granted to user01, so the privilege to issue the statement exists; the missing element is storage quota, which is a separate configuration from system privileges.

EThe user does not have sufficient privileges to create table on the default permanent tablespace.

CREATE TABLE covers table creation in any tablespace where the user holds quota; the problem is not the scope of the privilege but the complete absence of a quota grant on TBS1.

Concept tested: Oracle tablespace quota requirement for object creation

Source: https://docs.oracle.com/en/database/oracle/oracle-database/19/sqlrf/ALTER-USER.html

Topics

#tablespace quota#ORA-01950#user privileges#CREATE TABLE error

Community Discussion

No community discussion yet for this question.

Full 1Z0-052 Practice